### Proxy Addon Quickstart - Install and In-TUI Commands Source: https://empryo.com/docs/tools/addons.md Install the proxy addon and use it inside the TUI: `/proxy` to manage corresponding subscriptions, view active accounts, and check quota. ```bash empryo addon install proxy empryo # then inside the TUI: /proxy login # add a Claude / GPT / Gemini / Grok subscription /proxy status # see active accounts /proxy quota # how much of each plan is left # (/proxy still works — it is the old name) ``` -------------------------------- ### Install language server with /lsp install Source: https://empryo.com/docs/troubleshooting.md Run this command to install a language server from the Mason registry if it is not attached. ```text /lsp install ``` -------------------------------- ### Budget task router setup Source: https://empryo.com/docs/recipes/task-router.md Budget setup: Haiku everywhere, still very capable for most tasks. ```json "spark": "anthropic/claude-haiku-4-5", "ember": "anthropic/claude-haiku-4-5", "compact": "google/gemini-2.5-flash" ``` -------------------------------- ### Monorepo discovery output example Source: https://empryo.com/docs/tools/project.md Example output from the project(action: "list") command showing discovered workspace packages and their capabilities. ```text 5 packages: @myapp/web -- packages/web (biome) [lint, typecheck, test] @myapp/api -- packages/api (biome) [lint, typecheck, test] @myapp/shared -- packages/shared (biome) [lint, typecheck] @myapp/cli -- packages/cli (biome) [lint] @myapp/docs -- packages/docs [test] Use project(action: "lint", cwd: "") to target a specific package. ``` -------------------------------- ### System prompt toolchain integration example Source: https://empryo.com/docs/tools/project.md Example of how the detected toolchain and available project commands are injected into the agent's system prompt. ```text Toolchain: bun Project commands: lint: `bun run lint` . typecheck: `bun run typecheck` . test: `bun test` . build: `bun run build` ``` -------------------------------- ### Install proxy addon Source: https://empryo.com/docs/providers/subscriptions.md Command to install the proxy addon for Empryo. ```bash empryo addon install proxy ``` -------------------------------- ### Install a morph from GitHub Source: https://empryo.com/docs/tools/morphs.md Command to install a morph directly from a GitHub repository URL. ```text install proxysoul/Empryo/morphs/github-queue.json ``` -------------------------------- ### Start a plan with /plan command Source: https://empryo.com/docs/recipes/plan-mode.md Use this command to start a plan for a multi-file refactor. The agent researches read-only, writes a plan, and waits for approval. ```plaintext /plan refactor the auth module to use JWT refresh tokens ``` -------------------------------- ### Balanced task router setup Source: https://empryo.com/docs/recipes/task-router.md Balanced setup: strong code model for ember, cheap models for spark and compact. ```json "spark": "anthropic/claude-haiku-4-5", "ember": "anthropic/claude-sonnet-4-5", "compact": "google/gemini-2.5-flash" ``` -------------------------------- ### Max quality task router setup Source: https://empryo.com/docs/recipes/task-router.md Max quality setup: Sonnet for both code and exploration. ```json "spark": "anthropic/claude-sonnet-4-5", "ember": "anthropic/claude-sonnet-4-5", "compact": "google/gemini-2.5-flash" ``` -------------------------------- ### One gateway task router setup Source: https://empryo.com/docs/recipes/task-router.md One gateway setup: same models, one key via LLM Gateway. ```json "spark": "llmgateway/claude-haiku-4-5", "ember": "llmgateway/claude-sonnet-4-5" ``` -------------------------------- ### Configure multiple providers simultaneously Source: https://empryo.com/docs/providers/custom.md Example showing how to define multiple providers in a single configuration array. ```json { "providers": [ { "id": "together", "baseURL": "https://api.together.xyz/v1", "envVar": "TOGETHER_API_KEY", "models": ["meta-llama/Llama-3-70b"] }, { "id": "cerebras", "baseURL": "https://api.cerebras.ai/v1", "envVar": "CEREBRAS_API_KEY", "modelsAPI": "https://api.cerebras.ai/v1/models" } ] } ``` -------------------------------- ### Install Empryo on macOS or Linux Source: https://empryo.com/docs/installation.md Use this command to download and run the official installation script for macOS and Linux systems. The script automatically detects your architecture and verifies the release checksum. ```bash curl -fsSL https://empryo.com/install.sh | bash ``` -------------------------------- ### Configure a local server provider Source: https://empryo.com/docs/providers/custom.md Example configuration for a local LLM server that does not require an API key. ```json { "providers": [{ "id": "local", "name": "Local LLM", "baseURL": "http://localhost:8080/v1", "models": ["llama-3-70b"] }] } ``` -------------------------------- ### Compaction configuration example Source: https://empryo.com/docs/reference/configuration.md Example of the compaction configuration block, showing strategy, triggerThreshold, resetThreshold, keepRecent, maxToolResults, and llmExtraction fields. See the compaction documentation for details on what these do. ```json "compaction": { "strategy": "v2", "triggerThreshold": 0.7, "resetThreshold": 0.4, "keepRecent": 4, "maxToolResults": 30, "llmExtraction": true } ``` -------------------------------- ### SKILL.md Front Matter Example Source: https://empryo.com/docs/tools/skills.md The required front matter format for a SKILL.md file. ```yaml --- name: my-skill description: When to reach for this skill. --- # My Skill Instructions, conventions, patterns... ``` -------------------------------- ### Full Empryo configuration example Source: https://empryo.com/docs/reference/configuration.md Complete example of the Empryo config file showing all main fields: defaultModel, thinking, genome, semanticSummaries, diffStyle, chatStyle, toolTimeout, compaction, taskRouter, agentFeatures, and retry. This is the full configuration structure. ```json { "defaultModel": "anthropic/claude-sonnet-4-5", "thinking": { "mode": "adaptive" }, "genome": true, "semanticSummaries": "ast", "diffStyle": "default", "chatStyle": "accent", "toolTimeout": 2, "compaction": { "strategy": "v2", "triggerThreshold": 0.7, "keepRecent": 4 }, "taskRouter": { "spark": "anthropic/claude-haiku-4-5", "ember": "anthropic/claude-sonnet-4-5", "compact": "google/gemini-2.5-flash" }, "agentFeatures": { "desloppify": true, "tierRouting": true, "dispatchCache": true, "targetFileValidation": true }, "retry": { "maxAttempts": 5, "baseDelayMs": 3000 } } ``` -------------------------------- ### Rules with scoped conditions (JSON) Source: https://empryo.com/docs/tools/morphs.md Example of a rules array with conditions for paths, mode, and desk. Each rule applies only when its 'when' condition holds. ```json "rules": [ { "text": "Validate at the boundary; never trust a request body.", "when": { "paths": ["src/api/**"] } }, { "text": "List risks before steps.", "when": { "mode": ["plan"] } }, { "text": "Stay on the ticket; note anything else for later.", "when": { "desk": true } } ] ``` -------------------------------- ### Example Morph Triggers Configuration Source: https://empryo.com/docs/tools/morphs.md A JSON array demonstrating various trigger configurations, including Slack webhooks, review failure notifications, agent interaction prompts, and idle-time staging. ```json "triggers": [ { "on": "turn.done", "call": { "url": "https://hooks.slack.com/services/…", "body": { "text": "{{tab}} finished in {{duration}} ({{cost}}, {{files}} files)" } }, "state": { "inc": { "key": "turns" } }, "cooldown": 5 }, { "on": "review.done", "match": "FAIL", "notify": "Review failed: {{reason}}", "sound": "error", "open": "surface" }, { "on": "agent.asks", "system": true, "notify": "{{tab}} needs you: {{question}}" }, { "on": "idle", "after": 20, "cooldown": 1200, "stage": "What should I pick up next from my board?" } ] ``` -------------------------------- ### Sprint Morph Configuration Source: https://empryo.com/docs/tools/morphs.md A complete example of a morph configuration file located at .empryo/morphs/sprint.json, defining agent instructions, UI surface blocks, data lookups, and security guards. ```json { "schemaVersion": 1, "name": "Sprint", "instructions": "Say which ticket a change belongs to. Run the unit tests after editing src/.", "state": { "phase": "triage", "done": 2, "total": 5 }, "surface": { "title": "Sprint", "blocks": [ { "kind": "progress", "label": "Done", "value": "{{state.done}}", "hint": "{{state.done}} of {{state.total}}" }, { "kind": "field", "label": "Ticket", "placeholder": "PROJ-142", "prompt": "Work on ticket {{value}}." } ] }, "lookups": [ { "name": "ticket", "desc": "One ticket by key", "url": "http://127.0.0.1:4000/rest/api/3/issue?key={{key}}", "params": [{ "name": "key", "desc": "PROJ-123" }], "map": { "text": "{{key}} {{fields.summary}}", "badge": "{{fields.status.name}}" } } ], "guards": [ { "tool": "shell", "match": "*rm -rf*", "decision": "deny", "reason": "No recursive deletes here." }, { "tool": "edit_file", "match": "infra/**", "decision": "ask", "reason": "Infra edits need a second look." } ] } ``` -------------------------------- ### Grid block layout example Source: https://empryo.com/docs/tools/morphs.md Defines a grid with three columns, a gap of 'l', and items with spans, labels, and nested blocks. Use to arrange blocks in a responsive grid that reflows when the pane narrows. ```json { "kind": "grid", "columns": 3, "gap": "l", "items": [ { "span": 2, "label": "This week", "blocks": [ { "kind": "chart", "points": [] } ] }, { "blocks": [ { "kind": "stats", "items": [] } ] }, { "blocks": [ { "kind": "progress", "label": "Build", "value": 62 } ] } ] } ``` -------------------------------- ### Theme selection with shuffle filter Source: https://empryo.com/docs/tools/morphs.md Example of using the shuffle filter to randomly select a theme from a list based on the value of a pulse row, ensuring the theme remains consistent for the same value. ```json "pigment": { "tintApp": true, "theme": "{{pulses.np.rows.0.text | shuffle:tokyo-night:nightfox:ember:vesper:nordic:synthwave}}" } ``` -------------------------------- ### Declare a helper and pulse for a morph Source: https://empryo.com/docs/tools/morphs.md Declares a helper process and a pulse that polls it. The helper runs `bun .empryo/morphs/now-playing.ts` on port 4877; the pulse fetches `http://127.0.0.1:4877/` every 5 seconds and maps `title` and `art` into the morph's text and image. The app starts the helper when the morph goes live, stops it when the morph goes off or sleeps, restarts it with backoff on death, and restarts it when its script file changes. The helper receives `PORT`, `EMPRYO_CELL`, and `EMPRYO_PARENT_PID`; the panel footer shows `helper on :4877`, `helper held`, or `helper stopped` with the last stderr line on hover. A `304` response to `If-None-Match` means unchanged, not an error. The repo must be trusted and the morph's reach approved in Cells & Morphs; the run line is part of that approval and a changed line holds the helper again. `run` accepts one interpreter from `bun`, `node`, `python3`, `python`, `deno`, one script inside the project (or `~/.empryo/morphs` for global morphs), and plain arguments — no shell, pipes, or `..`. ```json "helper": { "run": "bun .empryo/morphs/now-playing.ts", "port": 4877, "hint": "reads Spotify over AppleScript" }, "pulses": [ { "id": "np", "url": "http://127.0.0.1:4877/", "every": 5, "map": { "text": "{{title}}", "image": "{{art}}" } } ] ``` -------------------------------- ### First prompt: Explain project entry points Source: https://empryo.com/docs/index.md Use this prompt as a first task to explore a project without making changes. It asks the agent to explain entry points and cite relevant files, which is a safe starting point. ```text Explain the project entry points and cite the relevant files. Do not change anything. ``` -------------------------------- ### Install Empryo on Windows Source: https://empryo.com/docs/installation.md Run this command in PowerShell on Windows x64 to install Empryo. For a portable installation, download the ZIP file from the official download page instead. ```powershell irm https://empryo.com/install.ps1 | iex ``` -------------------------------- ### Launch the interactive preset wizard Source: https://empryo.com/docs/reference/presets.md Use the CLI to browse the registry and manage preset scopes interactively. ```bash empryo --presets # or empryo presets ``` -------------------------------- ### Install Neovim via package manager Source: https://empryo.com/docs/troubleshooting.md Commands to install Neovim on various operating systems if it is not found. ```bash brew install neovim # macOS sudo apt install neovim # Debian/Ubuntu sudo pacman -S neovim # Arch ``` -------------------------------- ### List configured providers and models Source: https://empryo.com/docs/providers/overview.md Use these commands to see what providers are configured and which models are available for a specific provider. ```bash empryo --list-providers # see what's configured ``` ```bash empryo --list-models anthropic # see available models for one provider ```