# Send Satori to your agent
Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.
## Fast path
- Download the package from Yavira.
- Extract it into a folder your agent can access.
- Paste one of the prompts below and point your agent at the extracted folder.
## Suggested prompts
### New install

```text
I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Then review README.md for any prerequisites, environment setup, or post-install checks. Tell me what you changed and call out any manual steps you could not complete.
```
### Upgrade existing

```text
I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Then review README.md for any prerequisites, environment setup, or post-install checks. Summarize what changed and any follow-up checks I should run.
```
## Machine-readable fields
```json
{
  "schemaVersion": "1.0",
  "item": {
    "slug": "satori",
    "name": "Satori",
    "source": "tencent",
    "type": "skill",
    "category": "开发工具",
    "sourceUrl": "https://clawhub.ai/joelachance/satori",
    "canonicalUrl": "https://clawhub.ai/joelachance/satori",
    "targetPlatform": "OpenClaw"
  },
  "install": {
    "downloadUrl": "/downloads/satori",
    "sourceDownloadUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=satori",
    "sourcePlatform": "tencent",
    "targetPlatform": "OpenClaw",
    "packageFormat": "ZIP package",
    "primaryDoc": "SKILL.md",
    "includedAssets": [
      "README.md",
      "SKILL.md",
      "references/fact-criteria.md"
    ],
    "downloadMode": "redirect",
    "sourceHealth": {
      "source": "tencent",
      "slug": "satori",
      "status": "healthy",
      "reason": "direct_download_ok",
      "recommendedAction": "download",
      "checkedAt": "2026-05-08T10:51:22.656Z",
      "expiresAt": "2026-05-15T10:51:22.656Z",
      "httpStatus": 200,
      "finalUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=satori",
      "contentType": "application/zip",
      "probeMethod": "head",
      "details": {
        "probeUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=satori",
        "contentDisposition": "attachment; filename=\"satori-0.0.1.zip\"",
        "redirectLocation": null,
        "bodySnippet": null,
        "slug": "satori"
      },
      "scope": "item",
      "summary": "Item download looks usable.",
      "detail": "Yavira can redirect you to the upstream package for this item.",
      "primaryActionLabel": "Download for OpenClaw",
      "primaryActionHref": "/downloads/satori"
    },
    "validation": {
      "installChecklist": [
        "Use the Yavira download entry.",
        "Review SKILL.md after the package is downloaded.",
        "Confirm the extracted package contains the expected setup assets."
      ],
      "postInstallChecks": [
        "Confirm the extracted package includes the expected docs or setup files.",
        "Validate the skill or prompts are available in your target agent workspace.",
        "Capture any manual follow-up steps the agent could not complete."
      ]
    }
  },
  "links": {
    "detailUrl": "https://openagent3.xyz/skills/satori",
    "downloadUrl": "https://openagent3.xyz/downloads/satori",
    "agentUrl": "https://openagent3.xyz/skills/satori/agent",
    "manifestUrl": "https://openagent3.xyz/skills/satori/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/satori/agent.md"
  }
}
```
## Documentation

### Satori CLI Integration

Satori persists notable information across AI applications. It stores facts in both vector and knowledge graph databases for later retrieval.

### Environment Requirements

Works in: Claude Code, Cursor, Windsurf, or any AI tool with local terminal access.

### Authentication

The CLI auto-configures on first run:

Checks ~/.config/satori/satori.json for API key and memory ID
If missing, creates the file and provisions new credentials automatically
No manual setup required

### CLI Commands

Save facts:

npx -y @satori-sh/cli@latest add "<facts>"

Search for context:

npx -y @satori-sh/cli@latest search "<query>"

### Workflow: Proactive Search

At conversation start, if the user's message suggests existing context would help:

Extract key entities/topics from user's first message
Run search command with relevant query
Parse JSON response to extract relevant facts
Silently incorporate retrieved context into response
Do NOT announce "I searched Satori" unless results significantly impact the response

Parsing search results:
The CLI returns JSON. Extract the relevant facts and use them as context:

npx -y @satori-sh/cli search "Flamingo project tech stack"
# Returns JSON with matching facts - parse and incorporate naturally

Example triggers for proactive search:

"Let's continue working on [project]"
"What's the status of [thing]"
References to past decisions without full context
Project names, company names, people names

### When to Save

Save at natural breakpoints:

End of a decision-making discussion
When user explicitly requests ("remember this", "save this")
After establishing concrete preferences, names, dates, deadlines
When significant project context is established

### What to Save

See references/fact-criteria.md for detailed criteria.

SAVE - Notable, persistent information:

Decisions: "Using PostgreSQL for the database"
Tech preferences: "User prefers Bun over Node"
Names/branding: "Company name is Flamingo, they make pink cookies"
Dates/deadlines: "MVP deadline is March 15"
Architecture choices: "Microservices with event sourcing"
Strategic directions: "Targeting enterprise customers first"
Key contacts: "Sarah is the design lead"
Project context: "Satori is an AI memory infrastructure company"

DO NOT SAVE - Transient, granular, or obvious:

Work-in-progress feedback: "the color scheme needs work"
Claude's explanations or code snippets
Temporary debugging context
Generic preferences derivable from context
Conversational filler

### Save Execution

Extract notable facts from conversation (see criteria)
Format as natural language, batch related facts together
Execute CLI command
On success: continue silently (fire-and-forget)
On failure: notify user with error

Batching: The API handles batching, so longer natural language text is fine:

npx -y @satori-sh/cli add "User is building Satori, an AI memory infrastructure company. Tech stack: TypeScript, Bun, PostgreSQL. Deadline for MVP is March 15. Targeting developer tools market initially."

### Error Handling

If CLI fails or isn't installed:

⚠️ Satori CLI error: [error message]
To install: npm install -g @satori-sh/cli
Facts were not saved. Would you like me to show what I attempted to save?

### Fact Formatting

Write facts as clear, standalone statements. Include context so facts make sense when retrieved later:

Good: "Satori project uses PostgreSQL for primary storage and FalkorDB for knowledge graphs"
Bad: "Using Postgres and FalkorDB"

Good: "User prefers Bun runtime over Node.js for all JavaScript/TypeScript projects"
Bad: "Bun not Node"
## Trust
- Source: tencent
- Verification: Indexed source record
- Publisher: joelachance
- Version: 0.0.1
## Source health
- Status: healthy
- Item download looks usable.
- Yavira can redirect you to the upstream package for this item.
- Health scope: item
- Reason: direct_download_ok
- Checked at: 2026-05-08T10:51:22.656Z
- Expires at: 2026-05-15T10:51:22.656Z
- Recommended action: Download for OpenClaw
## Links
- [Detail page](https://openagent3.xyz/skills/satori)
- [Send to Agent page](https://openagent3.xyz/skills/satori/agent)
- [JSON manifest](https://openagent3.xyz/skills/satori/agent.json)
- [Markdown brief](https://openagent3.xyz/skills/satori/agent.md)
- [Download page](https://openagent3.xyz/downloads/satori)