Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx agentmods add commands/mdsakalu/agent-plugins/importgit clone --depth 1 https://github.com/mdsakalu/agent-pluginsWhat it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5 | $0.00012 | $0.00993 |
| Opus 5 | $0.00006 | $0.00496 |
| Sonnet 5 | $0.00002 | $0.00199 |
| Haiku 4.5 | $0.00001 | $0.00099 |
Grade A, and why
import scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 2d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 63 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Import an existing git checkout into the metarepo workspace system.
Resolve the metarepo path by reading ~/.claude/workspace-config.json and expanding ~ to $HOME.
The user's request: $ARGUMENTS
Steps
- Read
~/.claude/workspace-config.jsonto get the metarepo path. Expand~to$HOME. - Validate the source path:
- Expand
~to$HOMEin the provided path - Verify
.gitexists in the source directory - If
.gitis a file (not a directory), warn the user that the source is a git worktree — import may have unexpected results - Refuse if the source path is already inside
<metarepo>/repos/
- Expand
- Preflight the source — run git commands to collect information:
- Remote URL:
git -C <path> remote get-url origin(fallback to first available remote) - Current branch:
git -C <path> branch --show-current - All local branches:
git -C <path> branch --format='%(refname:short)' - Dirty state:
git -C <path> status --porcelain - Unpushed commits per branch:
git -C <path> log origin/<branch>..<branch> --onelinefor each branch - Stash list:
git -C <path> stash list— if non-empty, warn that stashes will NOT be imported
- Remote URL:
- Resolve repo mapping — parse the origin URL to determine
org/repo, then check ifrepos/<name>/.repo.jsonexists:- If onboarded: verify the URL matches. If it doesn't match (fork scenario), warn the user.
- If not onboarded: run
bash ${CLAUDE_PLUGIN_ROOT}/scripts/workspaces/add-repo.sh <origin-url>to onboard it first.
- Ask the user via
AskUserQuestionabout import scope:- Current branch only
- Select from branches (list them)
- All local branches
- Always skip the default branch (it maps to the existing
trunkworkspace).
- For each branch to import, propose a workspace name:
- Branch prefix mapping:
feature/*→epic-*,bugfix/*/hotfix/*→spike-*,pr-*passthrough - Otherwise: kebab-case the branch name, type =
import - Ask the user via
AskUserQuestionto confirm or override each workspace name - Check for collisions against existing
repos/<repo>/andnotes/<repo>/directories
- Branch prefix mapping:
- For each branch, run the import script:
Passbash ${CLAUDE_PLUGIN_ROOT}/scripts/workspaces/import-workspace.sh \ <repo> <name> --branch <branch> --source <path> \ --type <type> [--purpose "<purpose>"] [--dirty] [--local-commits]--dirtyonly for the current branch workspace when the source has dirty state (staged + unstaged changes). Pass--local-commitswhen the branch has unpushed commits (i.e.,git log origin/<branch>..<branch>is non-empty). - Run validation:
bash ${CLAUDE_PLUGIN_ROOT}/scripts/workspaces/validate.sh --repo <repo> - Report a summary of what was imported and suggest next steps:
/workspace:cd <repo>/<workspace>to switch to an imported workspace/workspace:listto see all workspaces
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 2d ago First seen · 63 lines · 12 tokens per session scan A d19ee7a56417
import is a command published in the GitHub repository mdsakalu/agent-plugins (4 stars, last pushed 2mo ago), licensed MIT. It adds 12 tokens to every session and 993 once invoked, about $0.0001 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
Other commands, from other repositories
merge
Finalize work on a branch: verify docs + tree are clean, merge to main, clean up. Supports both standard git checkout -b branches and git worktree flows — auto-detected at pre-flight.
expect
Diff-aware AI browser testing — reads the git diff, maps changes to affected pages via the route map, generates a targeted test plan, and executes it via agent-browser (Rust daemon + CDP, ARIA-tree-first) with pass/fail reporting. Use when testing UI changes, verifying PRs before merge, or running regression checks on…
speckit.tasks
Generate an actionable, dependency-ordered tasks.md for the feature based on available design artifacts.
dev
Runs Vendure in development mode. By default it starts three processes: the GraphQL server (ts-node ./src/index.ts), the worker (ts-node ./src/index-worker.ts), and the dashboard (a Vite dev server).
start
Runs a project that has already been compiled with vendure build.
pipeline-undo
Undo a pipeline run's result. With worktree isolation (the current engine), this is clean and low-risk: a run never touches your checkout — its result lives only on a pipeline/ branch (and, for a --push run, on the remote). "Undo" therefore means deleting that branch and its worktree, not reverting your working tree.