Routing Traffic With Route53 And Cloudfront
aws/agent-toolkit-for-aws
Configures Amazon Route 53 to route traffic to a CloudFront distribution using a custom domain.
Route Claude Desktop's Cowork / Agent-mode traffic through the local parsec proxy so it gets curation and savings too.
$ npx skills add daseinlabs/parsec --skill desktop -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install daseinlabs/parsec desktop --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/daseinlabs/parsec.git skills-src && mkdir -p .claude/skills && cp -r skills-src/packages/plugin/skills/desktop .claude/skills/desktop && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "desktop" agent skill from https://github.com/daseinlabs/parsec/tree/main/packages/plugin/skills/desktop into .claude/skills/desktop/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "desktop", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/daseinlabs/parsec/tree/main/packages/plugin/skills/desktopType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add daseinlabs/parsec --skill desktop -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install daseinlabs/parsec desktop --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/daseinlabs/parsec.git skills-src && mkdir -p .agents/skills && cp -r skills-src/packages/plugin/skills/desktop .agents/skills/desktop && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "desktop" agent skill from https://github.com/daseinlabs/parsec/tree/main/packages/plugin/skills/desktop into .agents/skills/desktop/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "desktop", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add daseinlabs/parsec --skill desktop -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install daseinlabs/parsec desktop --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/daseinlabs/parsec.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/packages/plugin/skills/desktop .cursor/skills/desktop && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "desktop" agent skill from https://github.com/daseinlabs/parsec/tree/main/packages/plugin/skills/desktop into .cursor/skills/desktop/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "desktop", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/daseinlabs/parsec.git --path packages/plugin/skills/desktop--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add daseinlabs/parsec --skill desktop -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install daseinlabs/parsec desktop --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/daseinlabs/parsec.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/packages/plugin/skills/desktop .gemini/skills/desktop && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "desktop" agent skill from https://github.com/daseinlabs/parsec/tree/main/packages/plugin/skills/desktop into .gemini/skills/desktop/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "desktop", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install daseinlabs/parsec desktopInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add daseinlabs/parsec --skill desktop -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/daseinlabs/parsec.git skills-src && mkdir -p .github/skills && cp -r skills-src/packages/plugin/skills/desktop .github/skills/desktop && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "desktop" agent skill from https://github.com/daseinlabs/parsec/tree/main/packages/plugin/skills/desktop into .github/skills/desktop/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "desktop", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add daseinlabs/parsec --skill desktop -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install daseinlabs/parsec desktop --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/daseinlabs/parsec.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/packages/plugin/skills/desktop .opencode/skills/desktop && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "desktop" agent skill from https://github.com/daseinlabs/parsec/tree/main/packages/plugin/skills/desktop into .opencode/skills/desktop/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "desktop", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
desktopRoute Claude Desktop's Cowork / Agent-mode traffic through the local parsec proxy so it gets curation and savings too.
Desktop is an agent skill from daseinlabs/parsec. Route Claude Desktop's Cowork / Agent-mode traffic through the local parsec proxy so it gets curation and savings too. Use when the user asks to use parsec with Claude Desktop, or to turn Desktop interception off.
Its SKILL.md is about 1.5k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.
The repository describes itself as: Agent runtime optimization with Small Language Models. The licence is MIT.
2 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit e97063c. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Shell commands in SKILL.md call:
brewFrom the folder's file list and the shell code blocks in SKILL.md.
Hosts in commands or code, which the agent is likely to contact:
api.anthropic.comFrom URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Desktop loads about 1.5k tokens when it runs. Until then it costs about 55 tokens; SKILL.md has 799 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from daseinlabs/parsec at commit e97063c, republished under its MIT licence (© daseinlabs). 799 words, ~1,482 tokens.
.claude/skills/desktop/SKILL.md (or your agent's skills folder).Claude Desktop has no endpoint setting — its embedded SDK is hardwired to
api.anthropic.com — so parsec cannot capture it the way it captures Claude
Code. The only route is process-scoped TLS interception via mitmproxy,
which means this is opt-in and has two costs the user must agree to before
you run anything:
brew install mitmproxy on macOS). It is
the one external tool parsec depends on, and only for this feature.Say both out loud before the first setup run. If the user is only asking "does this work with Claude Desktop?", answer with the scope note below and stop.
${CLAUDE_PLUGIN_ROOT}/bin/parsec setup desktop --statusChanges nothing. It reports mitmproxy, the CA, macOS Network Extension approval, whether the addon and interceptor are in place, and the proxy port Desktop would be pointed at.
${CLAUDE_PLUGIN_ROOT}/bin/parsec setup desktopIdempotent — safe to re-run after fixing whatever it complained about. It
generates the CA, writes the managed addon, verifies the platform's
interception mechanism is approved, restarts the proxy so it and the addon
come from the same build, and starts mitmdump scoped to the Claude process
only.
The restart matters: a proxy left running from an older binary does not serve
/v1/models, which the addon redirects — Desktop's model picker would 404.
If setup prints a WARNING: ... does not serve /v1/models, the installed
binary itself is stale; tell the user to install the current build before
relying on Desktop.
Flags, both off by default and both worth naming before you use them:
--install-ca — parsec runs the trust-store command itself instead of
printing it. It will prompt for the user's password. Only pass this if the
user has said yes to trusting the CA.--autostart — keep Desktop routed across reboots by installing a boot
service (launchd agent / systemd --user unit / Run key). Without it, the
interceptor lasts until logout.Then tell the user to quit Claude Desktop fully (⌘Q) and relaunch it — mitmproxy hooks the process at launch, so a Desktop that was already running stays unintercepted.
Use these instead of re-running setup — they skip the CA and approval steps:
${CLAUDE_PLUGIN_ROOT}/bin/parsec desktop status
${CLAUDE_PLUGIN_ROOT}/bin/parsec desktop start [--autostart]
${CLAUDE_PLUGIN_ROOT}/bin/parsec desktop stop [--keep-autostart]
${CLAUDE_PLUGIN_ROOT}/bin/parsec desktop restartstatus changes nothing — prefer it for any "is Desktop routed?" question.restart is the fix when the routed proxy port moved; it re-renders the
addon against the current port.stop also removes the boot service unless --keep-autostart, so a stop
stays stopped across a reboot.mitmdump starts fine and captures nothing.mitmdump
command it printed once by hand so macOS shows the approval prompt.~/.parsec/interceptor/mitmdump.log and report the real error rather than
guessing.If Desktop shows TLS/certificate errors after setup, the CA is not trusted —
run the command --status prints.
${CLAUDE_PLUGIN_ROOT}/bin/parsec disable desktopStops the interceptor, removes the boot service and the managed addon, and prints the command to untrust the CA (it does not run that one either). Desktop goes direct again after a relaunch.
This captures Cowork / Agent-mode inference — /v1/messages* plus
/v1/models. Regular Desktop chat runs on a different wire (/api/*) and is
deliberately untouched, as are login (/v1/oauth/*) and the Cowork bridge
(/v1/environments/*) — redirecting those would break Desktop, not curate it.
The user's own credentials are never substituted: the addon sets no auth
header, and the proxy forwards auth verbatim, exactly as for Claude Code.
Desktop traffic is tagged x-parsec-tool: claude-desktop so its savings are
separable in the ledger; that tag is dropped before anything leaves the
machine.
The Code tab inside Desktop is not curated. Recent Desktop builds start
Claude Code with their own ANTHROPIC_BASE_URL=https://api.anthropic.com,
overriding ~/.claude/settings.json, so that traffic never reaches the proxy
by the normal route. Intercepting it does not help either: the Code tab runs
on Node, which ignores the macOS keychain and rejects mitmproxy's CA (the
Client TLS handshake failed lines in ~/.parsec/interceptor/mitmdump.log).
Tell users this plainly so they do not spend an hour chasing it; the terminal
claude CLI is the curated path for Claude Code.
One thing to be straight about if asked: mitmproxy decrypts everything the Claude process sends, because it cannot know a request's host until after the TLS handshake. The addon only acts on the two Anthropic paths above, but the termination itself is process-wide. That is inherent to the mechanism.
© daseinlabs, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in packages/plugin/skills/desktop of daseinlabs/parsec.
Open the folder on GitHubat commit e97063c
Desktop next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Desktop this skilldaseinlabs/parsec | 130 | — | ~1.5k | Automated safety check: Pass | MIT | |
| Routing Traffic With Route53 And Cloudfrontaws/agent-toolkit-for-aws | 2.8k | — | ~455 | Automated safety check: Pass | Apache-2.0 | |
| OmniRoute Routing CLIdiegosouzapw/OmniRoute | 74k | — | ~342 | Automated safety check: Pass | MIT | |
| OmniRoute Combo Routingdiegosouzapw/OmniRoute | 74k | — | ~2.1k | Automated safety check: Pass | MIT | |
| Intelligence Routeruvnet/ruflo | 74k | — | ~874 | Automated safety check: Notes | MIT | |
| Setup Coworkasgeirtj/system_prompts_leaks | 69k | — | ~3k | Automated safety check: Pass | CC0-1.0 |
aws/agent-toolkit-for-aws
Configures Amazon Route 53 to route traffic to a CloudFront distribution using a custom domain.
diegosouzapw/OmniRoute
Creates, switches, and inspects OmniRoute model-routing combos, plus a suggestion command with cost and latency constraints.
diegosouzapw/OmniRoute
Manages OmniRoute routing combos through its REST API: create and update combos, choose from 19 strategies, set fallback chains, test outcomes and read metrics.
ruvnet/ruflo
Route tasks via the 3-tier model selector and learned patterns; emits a routing rationale via hooksexplain
asgeirtj/system_prompts_leaks
Guided Cowork setup — install a matching plugin, try a skill, connect tools.
wshobson/agents
Configure Istio traffic management including routing, load balancing, circuit breakers, and canary deployments.
daseinlabs/parsec
Sign in to Parsec so token savings show up in the user's dashboard.
daseinlabs/parsec
Activate parsec — write the Claude Code routing env (ANTHROPICBASEURL → local proxy), install the savings status line, and start the proxy.
daseinlabs/parsec
Stage a det+dir compaction of this session — a deterministic needed-set trim of the transcript plus a standing-directives block, injected automatically after /clear.
daseinlabs/parsec
Restart the local parsec proxy if it was killed mid-session — brings the supervisor back on the routed port so requests stop failing.
daseinlabs/parsec
Cleanly remove parsec from this machine — undo Claude Code routing, stop the local proxy, delete downloaded models and data, then uninstall the plugin itself.
daseinlabs/parsec
Show measured token savings — re-reads blocked and command loops broken by the parsec no-reread hook, from the local ledger, never estimated.
Route Claude Desktop's Cowork / Agent-mode traffic through the local parsec proxy so it gets curation and savings too. Desktop is an agent skill from daseinlabs/parsec. Route Claude Desktop's Cowork / Agent-mode traffic through the local parsec proxy so it gets curation and savings too.
Desktop fits situations like: the user asks to use parsec with Claude Desktop; turn Desktop interception off.
Run `npx skills add daseinlabs/parsec --skill desktop -a claude-code`. Or copy the skill folder (packages/plugin/skills/desktop in daseinlabs/parsec) into .claude/skills/desktop in your project. Claude Code loads it when a task matches its description.
Run `npx skills add daseinlabs/parsec --skill desktop -a codex`. Or copy the skill folder (packages/plugin/skills/desktop in daseinlabs/parsec) into .agents/skills/desktop in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add daseinlabs/parsec --skill desktop -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/desktop, .gemini/skills/desktop, .github/skills/desktop and .opencode/skills/desktop in your project.
Going by SKILL.md and its folder, Desktop needs the command-line tools its instructions call (brew).
SKILL.md names 1 domain. In commands or code: api.anthropic.com; the agent is likely to contact it when it follows the instructions. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Desktop is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 1.5k tokens (SKILL.md is roughly 5.9k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Desktop: Routing Traffic With Route53 And Cloudfront (aws/agent-toolkit-for-aws, 2.8k stars), OmniRoute Routing CLI (diegosouzapw/OmniRoute, 74k stars), OmniRoute Combo Routing (diegosouzapw/OmniRoute, 74k stars) and Intelligence Route (ruvnet/ruflo, 74k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
daseinlabs (a GitHub organization) maintains it in daseinlabs/parsec, which has 130 GitHub stars. The repository holds 8 skills in this directory. The repository was last updated on October 6, 2026.
Source: daseinlabs/parsec on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.