@softspark/ai-toolkit 2.0.2 → 2.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +49 -0
- package/README.md +143 -774
- package/app/ARCHITECTURE.md +1 -1
- package/app/plugins/README.md +6 -2
- package/app/skills/plugin-creator/SKILL.md +3 -4
- package/bin/ai-toolkit.js +34 -10
- package/kb/procedures/maintenance-sop.md +64 -16
- package/kb/procedures/release-preparation-sop.md +4 -2
- package/kb/procedures/release-verification-sop.md +15 -13
- package/kb/reference/architecture-overview.md +44 -5
- package/kb/reference/claude-ecosystem-expansion-foundations.md +4 -4
- package/kb/reference/cli-reference.md +135 -0
- package/kb/reference/codex-cli-compatibility.md +136 -0
- package/kb/reference/comparison.md +29 -0
- package/kb/reference/extension-api.md +23 -6
- package/kb/reference/global-install-model.md +62 -5
- package/kb/reference/mcp-editor-compatibility.md +62 -0
- package/kb/reference/mcp-templates.md +32 -6
- package/kb/reference/plugin-pack-conventions.md +22 -21
- package/kb/reference/skills-catalog.md +27 -5
- package/kb/reference/unique-features.md +213 -0
- package/llms-full.txt +903 -84
- package/llms.txt +5 -0
- package/package.json +6 -5
- package/scripts/codex_skill_adapter.py +295 -0
- package/scripts/dir_rules_shared.py +46 -7
- package/scripts/generate_agents_md.py +13 -0
- package/scripts/generate_antigravity.py +2 -1
- package/scripts/generate_augment_rules.py +2 -1
- package/scripts/generate_cline_rules.py +13 -3
- package/scripts/generate_codex.py +105 -0
- package/scripts/generate_codex_hooks.py +78 -0
- package/scripts/generate_codex_rules.py +52 -0
- package/scripts/generate_cursor_mdc.py +2 -1
- package/scripts/generate_roo_rules.py +2 -1
- package/scripts/generate_windsurf_rules.py +2 -1
- package/scripts/generator_base.py +15 -0
- package/scripts/install_steps/ai_tools.py +83 -4
- package/scripts/mcp_editors.py +340 -0
- package/scripts/mcp_manager.py +125 -13
- package/scripts/plugin.py +745 -301
- package/scripts/plugin_schema.py +16 -1
|
@@ -0,0 +1,135 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: "CLI Reference"
|
|
3
|
+
category: reference
|
|
4
|
+
service: ai-toolkit
|
|
5
|
+
tags: [cli, commands, reference, install, update, plugin, mcp]
|
|
6
|
+
created: "2026-04-13"
|
|
7
|
+
last_updated: "2026-04-13"
|
|
8
|
+
description: "Complete CLI reference for all ai-toolkit commands, options, and flags."
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
# CLI Reference
|
|
12
|
+
|
|
13
|
+
```
|
|
14
|
+
Usage: ai-toolkit <command> [options]
|
|
15
|
+
```
|
|
16
|
+
|
|
17
|
+
## Core Commands
|
|
18
|
+
|
|
19
|
+
| Command | Description |
|
|
20
|
+
|---------|-------------|
|
|
21
|
+
| `install` | First-time global install into `~/.claude/` + Cursor, Windsurf, Gemini |
|
|
22
|
+
| `install --local` | Claude Code configs only; add `--editors all` or `--editors cursor,aider` for other tools |
|
|
23
|
+
| `update` | Re-apply toolkit after `npm install -g @softspark/ai-toolkit@latest` |
|
|
24
|
+
| `update --local` | Re-apply + auto-detect editors from existing project files |
|
|
25
|
+
| `reset --local` | Wipe all project-local configs and recreate from scratch (clean slate) |
|
|
26
|
+
| `status` | Show installed modules and version |
|
|
27
|
+
| `uninstall` | Remove toolkit from `~/.claude/` |
|
|
28
|
+
| `validate` | Verify toolkit integrity (`--strict` for CI-grade, warnings = errors) |
|
|
29
|
+
| `doctor` | Diagnose install health, hooks, quick-win assets, and artifact drift |
|
|
30
|
+
| `doctor --fix` | Auto-repair broken symlinks, missing hooks, stale artifacts |
|
|
31
|
+
| `eject [dir]` | Export standalone config (no symlinks, no toolkit dependency) |
|
|
32
|
+
|
|
33
|
+
## Rule & Hook Injection
|
|
34
|
+
|
|
35
|
+
| Command | Description |
|
|
36
|
+
|---------|-------------|
|
|
37
|
+
| `add-rule <rule.md> [name]` | Register rule in `~/.softspark/ai-toolkit/rules/` — auto-applied on every `update` |
|
|
38
|
+
| `remove-rule <name> [dir]` | Unregister rule and remove its block from `CLAUDE.md` |
|
|
39
|
+
| `inject-hook <file.json>` | Inject external hooks into settings.json (idempotent, `_source` tagged) |
|
|
40
|
+
| `remove-hook <name>` | Remove injected hooks by source name |
|
|
41
|
+
|
|
42
|
+
## MCP Management
|
|
43
|
+
|
|
44
|
+
| Command | Description |
|
|
45
|
+
|---------|-------------|
|
|
46
|
+
| `mcp list` | List available MCP server templates (25 templates) |
|
|
47
|
+
| `mcp editors` | List editors with native MCP config adapters and scopes |
|
|
48
|
+
| `mcp add <name> [names...]` | Add MCP server template(s) to `.mcp.json` |
|
|
49
|
+
| `mcp install --editor <name[,..]> [names...]` | Install templates into native editor MCP config |
|
|
50
|
+
| `mcp show <name>` | Show MCP template config details |
|
|
51
|
+
| `mcp remove <name>` | Remove MCP server from `.mcp.json` or editor MCP config |
|
|
52
|
+
|
|
53
|
+
## Plugin Management
|
|
54
|
+
|
|
55
|
+
| Command | Description |
|
|
56
|
+
|---------|-------------|
|
|
57
|
+
| `plugin list` | Show available plugin packs with install status |
|
|
58
|
+
| `plugin install <name> [--editor claude\|codex\|all]` | Install a plugin pack for selected runtime(s) |
|
|
59
|
+
| `plugin install --all [--editor claude\|codex\|all]` | Install all 11 plugin packs |
|
|
60
|
+
| `plugin update <name> [--editor claude\|codex\|all]` | Update a plugin pack (remove + reinstall, preserves data) |
|
|
61
|
+
| `plugin update --all [--editor claude\|codex\|all]` | Update all installed plugin packs |
|
|
62
|
+
| `plugin clean <name> [--days N]` | Prune old plugin data (default: 90 days) |
|
|
63
|
+
| `plugin remove <name> [--editor claude\|codex\|all]` | Remove a plugin pack |
|
|
64
|
+
| `plugin status [--editor claude\|codex\|all]` | Show installed plugins with runtime-specific details |
|
|
65
|
+
|
|
66
|
+
## Config Inheritance
|
|
67
|
+
|
|
68
|
+
| Command | Description |
|
|
69
|
+
|---------|-------------|
|
|
70
|
+
| `config validate [path]` | Validate `.softspark-toolkit.json` schema + extends + enforcement |
|
|
71
|
+
| `config diff [path]` | Show project vs base config differences |
|
|
72
|
+
| `config init [flags]` | Create `.softspark-toolkit.json` (`--extends`, `--profile`, `--no-extends`) |
|
|
73
|
+
| `config create-base <name>` | Scaffold base config npm package |
|
|
74
|
+
| `config check [path]` | CI enforcement gate (exit 0=pass, 1=fail, 2=no config; `--json`) |
|
|
75
|
+
|
|
76
|
+
## Project Registry
|
|
77
|
+
|
|
78
|
+
| Command | Description |
|
|
79
|
+
|---------|-------------|
|
|
80
|
+
| `projects` | List registered projects |
|
|
81
|
+
| `projects --prune` | Remove stale (deleted) entries |
|
|
82
|
+
| `projects remove /path` | Unregister specific project |
|
|
83
|
+
|
|
84
|
+
## Generator Commands
|
|
85
|
+
|
|
86
|
+
| Command | Description |
|
|
87
|
+
|---------|-------------|
|
|
88
|
+
| `generate-all` | Generate all platform configs at once |
|
|
89
|
+
| `agents-md` | Regenerate `AGENTS.md` from agent definitions |
|
|
90
|
+
| `codex-md` | Generate `AGENTS.md` with marker injection for Codex CLI |
|
|
91
|
+
| `codex-rules` | Generate `.agents/rules/*.md` for Codex CLI |
|
|
92
|
+
| `codex-hooks` | Generate `.codex/hooks.json` for Codex CLI |
|
|
93
|
+
| `cursor-rules` | Generate `.cursorrules` (legacy single file) |
|
|
94
|
+
| `cursor-mdc` | Generate `.cursor/rules/*.mdc` (recommended) |
|
|
95
|
+
| `windsurf-rules` | Generate `.windsurfrules` (legacy) |
|
|
96
|
+
| `windsurf-dir-rules` | Generate `.windsurf/rules/*.md` (recommended) |
|
|
97
|
+
| `copilot-instructions` | Generate `.github/copilot-instructions.md` |
|
|
98
|
+
| `gemini-md` | Generate `GEMINI.md` for Gemini CLI |
|
|
99
|
+
| `cline-rules` | Generate `.clinerules` (legacy) |
|
|
100
|
+
| `cline-dir-rules` | Generate `.clinerules/*.md` (recommended) |
|
|
101
|
+
| `roo-modes` | Generate `.roomodes` |
|
|
102
|
+
| `roo-dir-rules` | Generate `.roo/rules/*.md` |
|
|
103
|
+
| `aider-conf` | Generate `.aider.conf.yml` |
|
|
104
|
+
| `conventions-md` | Generate `CONVENTIONS.md` for Aider |
|
|
105
|
+
| `augment-rules` | Generate `.augment/rules/ai-toolkit.md` (legacy) |
|
|
106
|
+
| `augment-dir-rules` | Generate `.augment/rules/ai-toolkit-*.md` (recommended) |
|
|
107
|
+
| `antigravity-rules` | Generate `.agent/rules/` and `.agent/workflows/` |
|
|
108
|
+
| `llms-txt` | Generate `llms.txt` and `llms-full.txt` |
|
|
109
|
+
|
|
110
|
+
## Other Commands
|
|
111
|
+
|
|
112
|
+
| Command | Description |
|
|
113
|
+
|---------|-------------|
|
|
114
|
+
| `stats` | Show skill usage statistics (`--reset` to clear, `--json` for raw output) |
|
|
115
|
+
| `benchmark --my-config` | Compare your config vs defaults vs ecosystem |
|
|
116
|
+
| `benchmark-ecosystem` | Generate ecosystem benchmark snapshot |
|
|
117
|
+
| `create skill <name>` | Scaffold new skill from template (`--template=linter\|reviewer\|generator\|workflow\|knowledge`) |
|
|
118
|
+
| `sync` | Config portability via GitHub Gist (`--export`, `--push`, `--pull`, `--import`) |
|
|
119
|
+
| `compile-slm` | Compile toolkit into minimal SLM system prompt (`--budget`, `--model-size`, `--dry-run`) |
|
|
120
|
+
| `evaluate` | Run skill evaluation suite |
|
|
121
|
+
|
|
122
|
+
## Install / Update Options
|
|
123
|
+
|
|
124
|
+
```bash
|
|
125
|
+
ai-toolkit install --only agents,hooks # apply only listed components
|
|
126
|
+
ai-toolkit install --skip hooks # skip listed components
|
|
127
|
+
ai-toolkit install --profile minimal # minimal | standard | strict
|
|
128
|
+
ai-toolkit install --persona backend-lead # backend-lead | frontend-lead | devops-eng | junior-dev
|
|
129
|
+
ai-toolkit install --local --editors all # Claude Code + all editors
|
|
130
|
+
ai-toolkit install --local --editors cursor,aider # + specific editors
|
|
131
|
+
ai-toolkit install --local --lang typescript # explicit language rules
|
|
132
|
+
ai-toolkit install --modules core,agents,rules-typescript # selective modules
|
|
133
|
+
ai-toolkit install --list # dry-run: show what would change
|
|
134
|
+
ai-toolkit update --local # auto-detects editors from existing files
|
|
135
|
+
```
|
|
@@ -0,0 +1,136 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: "AI Toolkit - Codex CLI Compatibility"
|
|
3
|
+
category: reference
|
|
4
|
+
service: ai-toolkit
|
|
5
|
+
tags: [codex, compatibility, install, skills, hooks]
|
|
6
|
+
version: "1.0.0"
|
|
7
|
+
created: "2026-04-12"
|
|
8
|
+
last_updated: "2026-04-13"
|
|
9
|
+
description: "Reference for how ai-toolkit maps Claude-oriented skills, hooks, and plugin packs to Codex CLI."
|
|
10
|
+
---
|
|
11
|
+
|
|
12
|
+
# AI Toolkit - Codex CLI Compatibility
|
|
13
|
+
|
|
14
|
+
## Summary
|
|
15
|
+
|
|
16
|
+
Codex CLI now receives the full `ai-toolkit` skill catalog during local install.
|
|
17
|
+
|
|
18
|
+
Native Codex-compatible skills are linked directly into `.agents/skills/`. Skills
|
|
19
|
+
that depend on Claude-only orchestration primitives are generated as Codex
|
|
20
|
+
wrappers that preserve the original workflow intent while translating execution
|
|
21
|
+
to Codex subagents and plan tracking.
|
|
22
|
+
|
|
23
|
+
Experimental plugin packs can also target a global Codex surface with
|
|
24
|
+
`ai-toolkit plugin install --editor codex`, which layers plugin-specific skills,
|
|
25
|
+
rules, and hooks into `HOME` without changing the project-local core install
|
|
26
|
+
model.
|
|
27
|
+
|
|
28
|
+
## Local Install Outputs
|
|
29
|
+
|
|
30
|
+
`ai-toolkit install --local --editors codex` generates:
|
|
31
|
+
|
|
32
|
+
- `AGENTS.md`
|
|
33
|
+
- `.agents/rules/*.md`
|
|
34
|
+
- `.agents/skills/*`
|
|
35
|
+
- `.codex/hooks.json`
|
|
36
|
+
|
|
37
|
+
## Global Plugin Outputs
|
|
38
|
+
|
|
39
|
+
`ai-toolkit plugin install --editor codex <pack>` bootstraps or reuses:
|
|
40
|
+
|
|
41
|
+
- `~/AGENTS.md`
|
|
42
|
+
- `~/.agents/rules/*.md`
|
|
43
|
+
- `~/.agents/skills/*`
|
|
44
|
+
- `~/.codex/hooks.json`
|
|
45
|
+
|
|
46
|
+
Plugin packs only add their own runtime-specific layer on top of the generated
|
|
47
|
+
Codex base. Shared hook scripts and plugin scripts still live in
|
|
48
|
+
`~/.softspark/ai-toolkit/`.
|
|
49
|
+
|
|
50
|
+
## Skill Translation Model
|
|
51
|
+
|
|
52
|
+
Two delivery modes are used for Codex:
|
|
53
|
+
|
|
54
|
+
| Mode | How it is installed | Use case |
|
|
55
|
+
|------|----------------------|----------|
|
|
56
|
+
| Native | Symlink to `app/skills/<name>/` | Skills whose `allowed-tools` are already supported in Codex |
|
|
57
|
+
| Adapted | Generated wrapper directory in `.agents/skills/<name>/` | Skills that rely on Claude-only `Agent`, `Team*`, or `Task*` primitives |
|
|
58
|
+
|
|
59
|
+
Adapted skills keep the same support assets (`reference/`, `scripts/`, `assets/`)
|
|
60
|
+
via symlinks, but rewrite `SKILL.md` to Codex-native guidance.
|
|
61
|
+
|
|
62
|
+
## Claude-to-Codex Tool Mapping
|
|
63
|
+
|
|
64
|
+
The adapter rewrites Claude-specific delegation guidance to the closest Codex
|
|
65
|
+
runtime primitives:
|
|
66
|
+
|
|
67
|
+
| Claude-oriented primitive | Codex replacement |
|
|
68
|
+
|---------------------------|------------------|
|
|
69
|
+
| `Agent(...)` | `spawn_agent(..., fork_context=True, ...)` |
|
|
70
|
+
| `SendMessage` | `send_input` |
|
|
71
|
+
| `TaskCreate` / `TaskList` / `TaskUpdate` | `update_plan` or explicit checklist tracking |
|
|
72
|
+
| `TaskGet` / `TaskOutput` | `wait_agent` |
|
|
73
|
+
| `TaskStop` / `TeamDelete` | `close_agent` |
|
|
74
|
+
| Agent teams | Multiple spawned subagents with explicit file ownership |
|
|
75
|
+
|
|
76
|
+
## Adapted Skill Classes
|
|
77
|
+
|
|
78
|
+
The main adapted group is multi-agent orchestration:
|
|
79
|
+
|
|
80
|
+
- `/orchestrate`
|
|
81
|
+
- `/workflow`
|
|
82
|
+
- `/swarm`
|
|
83
|
+
- `/teams`
|
|
84
|
+
- `/subagent-development`
|
|
85
|
+
|
|
86
|
+
The adapter also covers skills that previously depended only on Claude's
|
|
87
|
+
`Agent` primitive, such as:
|
|
88
|
+
|
|
89
|
+
- `/tdd`
|
|
90
|
+
- `/write-a-prd`
|
|
91
|
+
- `/qa-session`
|
|
92
|
+
- `/triage-issue`
|
|
93
|
+
- `/architecture-audit`
|
|
94
|
+
|
|
95
|
+
## Hook Compatibility
|
|
96
|
+
|
|
97
|
+
Codex does not expose the full Claude hook event surface. The Codex hook
|
|
98
|
+
generator emits only the events supported by Codex runtime integration:
|
|
99
|
+
|
|
100
|
+
- `SessionStart`
|
|
101
|
+
- `PreToolUse`
|
|
102
|
+
- `PostToolUse`
|
|
103
|
+
- `UserPromptSubmit`
|
|
104
|
+
- `Stop`
|
|
105
|
+
|
|
106
|
+
This means Claude-only events such as `TaskCompleted`, `TeammateIdle`,
|
|
107
|
+
`SubagentStart`, `SubagentStop`, `PreCompact`, `SessionEnd`, and
|
|
108
|
+
`Notification` are not available in `.codex/hooks.json`.
|
|
109
|
+
|
|
110
|
+
## Behavioral Limits
|
|
111
|
+
|
|
112
|
+
Codex wrappers preserve workflow intent, but not every Claude runtime behavior
|
|
113
|
+
has a perfect one-to-one equivalent.
|
|
114
|
+
|
|
115
|
+
Known limits:
|
|
116
|
+
|
|
117
|
+
- No native Codex equivalent of tmux-backed Agent Teams lifecycle events
|
|
118
|
+
- No separate task object model equivalent to Claude `Task*` APIs
|
|
119
|
+
- Hook event coverage is narrower than Claude Code
|
|
120
|
+
|
|
121
|
+
These are runtime platform limits, not installation defects.
|
|
122
|
+
|
|
123
|
+
## Verification
|
|
124
|
+
|
|
125
|
+
The Codex compatibility path is verified by:
|
|
126
|
+
|
|
127
|
+
1. Generator contract tests for `generate_codex.py`
|
|
128
|
+
2. Local install tests for `.agents/skills/` and `.codex/hooks.json`
|
|
129
|
+
3. Plugin install tests for global Codex rules, hooks, and cleanup paths
|
|
130
|
+
4. CLI tests for `codex-md` and `codex-hooks`
|
|
131
|
+
|
|
132
|
+
## Related
|
|
133
|
+
|
|
134
|
+
- `kb/reference/skills-catalog.md`
|
|
135
|
+
- `kb/reference/architecture-overview.md`
|
|
136
|
+
- `kb/reference/global-install-model.md`
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: "Ecosystem Comparison"
|
|
3
|
+
category: reference
|
|
4
|
+
service: ai-toolkit
|
|
5
|
+
tags: [comparison, ecosystem, features, alternatives]
|
|
6
|
+
created: "2026-04-13"
|
|
7
|
+
last_updated: "2026-04-13"
|
|
8
|
+
description: "Feature comparison of ai-toolkit vs other Claude Code toolkits and agent frameworks."
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
# Ecosystem Comparison
|
|
12
|
+
|
|
13
|
+
| Feature | ai-toolkit | everything-claude-code | wshobson/agents | ruflo |
|
|
14
|
+
|---------|---------------|----------------------|-----------------|-------|
|
|
15
|
+
| Skills | 92 | 100+ | 146 | 20+ |
|
|
16
|
+
| Agents | 44 | 30+ | 112 | 20+ |
|
|
17
|
+
| Machine-enforced constitution | **Yes** | No (docs only) | No | No |
|
|
18
|
+
| Skill-scoped lifecycle hooks | **Yes** | No | No | No |
|
|
19
|
+
| Effort-based model budgeting | **Yes** | No | No | No |
|
|
20
|
+
| Test suite | Yes (bats) | Yes (997 tests) | No | Yes |
|
|
21
|
+
| npm/npx install | Yes | Yes | Yes | Yes |
|
|
22
|
+
| Cross-tool support | **Cursor, Windsurf, Copilot, Gemini, Cline, Roo, Aider, Augment, Antigravity, Codex** | 5+ tools | Smithery | Limited |
|
|
23
|
+
| Selective install | Yes | Yes | Yes (72 plugins) | No |
|
|
24
|
+
| Session persistence | Yes | Yes | No | No |
|
|
25
|
+
| Architecture notes | **Yes** | No | No | No |
|
|
26
|
+
| KB/RAG integration | **Yes** | No | No | Yes |
|
|
27
|
+
| License | MIT | MIT | MIT | MIT |
|
|
28
|
+
|
|
29
|
+
For live benchmark data, see the [ecosystem benchmark snapshot](claude-ecosystem-benchmark-snapshot.md).
|
|
@@ -2,11 +2,11 @@
|
|
|
2
2
|
title: "Extension API Reference"
|
|
3
3
|
category: reference
|
|
4
4
|
service: ai-toolkit
|
|
5
|
-
tags: [extension-api, inject-rule, inject-hook, mcp-templates, integration]
|
|
6
|
-
version: "1.3.
|
|
5
|
+
tags: [extension-api, inject-rule, inject-hook, mcp-templates, integration, editors]
|
|
6
|
+
version: "1.3.9"
|
|
7
7
|
created: "2026-04-07"
|
|
8
|
-
last_updated: "2026-04-
|
|
9
|
-
description: "Reference for ai-toolkit's extension API: inject-rule, inject-hook, remove-rule, remove-hook, and
|
|
8
|
+
last_updated: "2026-04-12"
|
|
9
|
+
description: "Reference for ai-toolkit's extension API: inject-rule, inject-hook, remove-rule, remove-hook, and editor-aware MCP template management."
|
|
10
10
|
---
|
|
11
11
|
|
|
12
12
|
# Extension API Reference
|
|
@@ -27,6 +27,7 @@ This design is intentional: ai-toolkit is a generic toolkit. Consumers (MCP serv
|
|
|
27
27
|
| `remove-hook <name>` | `~/.claude/settings.json` | Strip all entries with matching `_source` | Yes |
|
|
28
28
|
| `add-rule <file.md>` | `~/.softspark/ai-toolkit/rules/` | File copy + re-inject all rules on next `update` | Yes |
|
|
29
29
|
| `mcp add <name...>` | `.mcp.json` | Merge `mcpServers` block from template | Yes |
|
|
30
|
+
| `mcp install --editor <name...>` | Native editor MCP config | Render canonical template into editor format | Yes |
|
|
30
31
|
|
|
31
32
|
## inject-rule
|
|
32
33
|
|
|
@@ -103,7 +104,7 @@ npx @softspark/ai-toolkit remove-hook my-tool-hooks
|
|
|
103
104
|
|
|
104
105
|
The argument is the source name (file stem used during `inject-hook`). If no entries with that source are present, the command exits 0 silently.
|
|
105
106
|
|
|
106
|
-
## mcp add
|
|
107
|
+
## mcp add / install
|
|
107
108
|
|
|
108
109
|
Merges one or more MCP server templates from `app/mcp-templates/` into the project's `.mcp.json`.
|
|
109
110
|
|
|
@@ -111,13 +112,24 @@ Merges one or more MCP server templates from `app/mcp-templates/` into the proje
|
|
|
111
112
|
ai-toolkit mcp add github # add a single template
|
|
112
113
|
ai-toolkit mcp add github postgres slack # add multiple at once
|
|
113
114
|
ai-toolkit mcp list # list all available templates
|
|
115
|
+
ai-toolkit mcp editors # list supported native adapters
|
|
114
116
|
ai-toolkit mcp show github # print a template's JSON
|
|
117
|
+
ai-toolkit mcp install --editor cursor --scope project github --target .
|
|
118
|
+
ai-toolkit mcp install --editor codex context7
|
|
115
119
|
ai-toolkit mcp remove github # remove an entry from .mcp.json
|
|
120
|
+
ai-toolkit mcp remove github --editor cursor --scope project --target .
|
|
116
121
|
```
|
|
117
122
|
|
|
118
123
|
**Implementation:** `scripts/mcp_manager.py`.
|
|
119
124
|
|
|
120
|
-
The `add` command merges the `mcpServers` block from the template into `.mcp.json`. If `.mcp.json` does not exist, it is created. If the server name already exists, the entry is overwritten.
|
|
125
|
+
The `add` command merges the `mcpServers` block from the template into `.mcp.json`. If `.mcp.json` does not exist, it is created. If the server name already exists, the entry is overwritten.
|
|
126
|
+
|
|
127
|
+
The `install` command renders the same canonical template into a native editor config format. Supported adapters currently cover:
|
|
128
|
+
- JSON clients with `mcpServers`: Claude Code, Cursor, Gemini CLI, Windsurf, Cline, Augment
|
|
129
|
+
- JSON clients with additional required metadata: GitHub Copilot
|
|
130
|
+
- TOML clients: Codex CLI
|
|
131
|
+
|
|
132
|
+
When `install` runs with `--scope project`, ai-toolkit also updates `.mcp.json` so the project-level config remains the source of truth for later sync and local install flows.
|
|
121
133
|
|
|
122
134
|
## Architecture
|
|
123
135
|
|
|
@@ -132,6 +144,7 @@ The `add` command merges the `mcpServers` block from the template into `.mcp.jso
|
|
|
132
144
|
│ remove-hook <name> → settings.json │
|
|
133
145
|
│ add-rule <file.md> → rules/ registry │
|
|
134
146
|
│ mcp add <template> → .mcp.json │
|
|
147
|
+
│ mcp install <template> → editor-native MCP │
|
|
135
148
|
│ │
|
|
136
149
|
│ Idempotent: markers (rules) / _source tags (hooks) │
|
|
137
150
|
│ ai-toolkit NEVER calls external services │
|
|
@@ -157,6 +170,9 @@ npx @softspark/ai-toolkit inject-hook ./hooks/my-tool-hooks.json
|
|
|
157
170
|
|
|
158
171
|
# Add an MCP server template
|
|
159
172
|
npx @softspark/ai-toolkit mcp add github
|
|
173
|
+
|
|
174
|
+
# Render the same template into Cursor project config
|
|
175
|
+
npx @softspark/ai-toolkit mcp install --editor cursor --scope project github --target .
|
|
160
176
|
```
|
|
161
177
|
|
|
162
178
|
To uninstall:
|
|
@@ -172,4 +188,5 @@ All operations are idempotent — safe to run on every install or update.
|
|
|
172
188
|
|
|
173
189
|
- [PATH: kb/reference/hooks-catalog.md] — built-in hooks reference
|
|
174
190
|
- [PATH: kb/reference/mcp-templates.md] — available MCP server templates
|
|
191
|
+
- [PATH: kb/reference/mcp-editor-compatibility.md] — native editor MCP support matrix
|
|
175
192
|
- [PATH: kb/reference/architecture-overview.md] — overall install model
|
|
@@ -2,11 +2,11 @@
|
|
|
2
2
|
title: "Global Install Model"
|
|
3
3
|
category: reference
|
|
4
4
|
service: ai-toolkit
|
|
5
|
-
tags: [install, global, claude, local-setup]
|
|
6
|
-
version: "1.4.
|
|
5
|
+
tags: [install, global, claude, codex, plugins, local-setup]
|
|
6
|
+
version: "1.4.4"
|
|
7
7
|
created: "2026-03-26"
|
|
8
|
-
last_updated: "2026-04-
|
|
9
|
-
description: "Reference description of the global install target, local
|
|
8
|
+
last_updated: "2026-04-13"
|
|
9
|
+
description: "Reference description of the global install target, project-local editor setup, global Codex plugin layering, and command responsibilities in ai-toolkit."
|
|
10
10
|
---
|
|
11
11
|
|
|
12
12
|
# Global Install Model
|
|
@@ -17,6 +17,10 @@ description: "Reference description of the global install target, local project
|
|
|
17
17
|
|
|
18
18
|
That means one machine-level install provides agents, skills, hooks, and rules to every project without committing toolkit boilerplate into each repository.
|
|
19
19
|
|
|
20
|
+
Codex remains project-local for the core toolkit install, but experimental
|
|
21
|
+
plugin packs can now layer a global Codex target in `HOME` when explicitly
|
|
22
|
+
installed with `ai-toolkit plugin install --editor codex`.
|
|
23
|
+
|
|
20
24
|
## Command Responsibilities
|
|
21
25
|
|
|
22
26
|
| Command | Target | Purpose |
|
|
@@ -29,6 +33,11 @@ That means one machine-level install provides agents, skills, hooks, and rules t
|
|
|
29
33
|
| `ai-toolkit update --local` | current project | refresh project configs; auto-detects editors from existing files |
|
|
30
34
|
| `ai-toolkit add-rule` | `~/.softspark/ai-toolkit/rules/` | register a global rule |
|
|
31
35
|
| `ai-toolkit remove-rule` | `~/.softspark/ai-toolkit/rules/` | unregister a global rule |
|
|
36
|
+
| `ai-toolkit mcp add <name...>` | current project | merge MCP templates into `.mcp.json` |
|
|
37
|
+
| `ai-toolkit mcp install --editor <name...>` | editor-native config | render MCP templates into editor-specific config files |
|
|
38
|
+
| `ai-toolkit plugin install --editor claude|codex|all <name>` | runtime-native config | install plugin pack for selected runtime(s) |
|
|
39
|
+
| `ai-toolkit plugin update --editor claude|codex|all <name>` | runtime-native config | re-apply plugin pack after toolkit updates |
|
|
40
|
+
| `ai-toolkit plugin remove --editor claude|codex|all <name>` | runtime-native config | remove plugin pack from selected runtime(s) |
|
|
32
41
|
|
|
33
42
|
## Why global install is the default
|
|
34
43
|
|
|
@@ -39,10 +48,17 @@ That means one machine-level install provides agents, skills, hooks, and rules t
|
|
|
39
48
|
|
|
40
49
|
## What remains project-local
|
|
41
50
|
|
|
42
|
-
These files still stay local to a repository:
|
|
51
|
+
These files still stay local to a repository as part of the core install model:
|
|
43
52
|
- `CLAUDE.md`
|
|
44
53
|
- `.claude/settings.local.json`
|
|
54
|
+
- `.mcp.json`
|
|
55
|
+
- `.cursor/mcp.json`
|
|
56
|
+
- `.github/mcp.json`
|
|
45
57
|
- `.claude/constitution.md`
|
|
58
|
+
- project `AGENTS.md`
|
|
59
|
+
- project `.agents/rules/*.md`
|
|
60
|
+
- project `.agents/skills/*`
|
|
61
|
+
- project `.codex/hooks.json`
|
|
46
62
|
- `.github/copilot-instructions.md`
|
|
47
63
|
- `.clinerules`
|
|
48
64
|
- `.roomodes`
|
|
@@ -54,7 +70,48 @@ These files still stay local to a repository:
|
|
|
54
70
|
|
|
55
71
|
Hooks do **not** live in project-local settings. They are merged only into global `~/.claude/settings.json`.
|
|
56
72
|
|
|
73
|
+
Codex is the exception in terms of file location, not hook ownership: its local
|
|
74
|
+
`.codex/hooks.json` points to hook scripts already installed globally in
|
|
75
|
+
`~/.softspark/ai-toolkit/hooks/`.
|
|
76
|
+
|
|
77
|
+
## Codex Local Install Behavior
|
|
78
|
+
|
|
79
|
+
`ai-toolkit install --local --editors codex` creates:
|
|
80
|
+
|
|
81
|
+
- `AGENTS.md`
|
|
82
|
+
- `.agents/rules/*.md`
|
|
83
|
+
- `.agents/skills/*`
|
|
84
|
+
- `.codex/hooks.json`
|
|
85
|
+
|
|
86
|
+
Native Codex-compatible skills are linked directly. Claude-oriented skills that
|
|
87
|
+
depend on `Agent`, `Team*`, or `Task*` primitives are translated into generated
|
|
88
|
+
Codex wrappers so the project still receives the full skill catalog.
|
|
89
|
+
|
|
90
|
+
## Codex Global Plugin Layer
|
|
91
|
+
|
|
92
|
+
`ai-toolkit plugin install --editor codex <pack>` additionally targets:
|
|
93
|
+
|
|
94
|
+
- `~/AGENTS.md`
|
|
95
|
+
- `~/.agents/rules/*.md`
|
|
96
|
+
- `~/.agents/skills/*`
|
|
97
|
+
- `~/.codex/hooks.json`
|
|
98
|
+
|
|
99
|
+
This is not the default core install path. It is an explicit, opt-in plugin
|
|
100
|
+
layer used only for plugin packs. Runtime state is tracked in
|
|
101
|
+
`~/.softspark/ai-toolkit/plugins.json` per target (`claude`, `codex`).
|
|
102
|
+
|
|
103
|
+
## MCP Local Sync Behavior
|
|
104
|
+
|
|
105
|
+
If `.mcp.json` exists in the current project, `ai-toolkit install --local` mirrors its `mcpServers` block into:
|
|
106
|
+
- `.claude/settings.local.json`
|
|
107
|
+
- `.cursor/mcp.json` when `--editors cursor` is selected
|
|
108
|
+
- `.github/mcp.json` when `--editors copilot` is selected
|
|
109
|
+
|
|
110
|
+
Global-only editor MCP configs are not written during `install --local`. Use `ai-toolkit mcp install --editor <name...>` for those targets.
|
|
111
|
+
|
|
57
112
|
## Related Documents
|
|
58
113
|
|
|
59
114
|
- `kb/reference/distribution-model.md`
|
|
60
115
|
- `kb/reference/merge-friendly-install-model.md`
|
|
116
|
+
- `kb/reference/codex-cli-compatibility.md`
|
|
117
|
+
- `kb/reference/mcp-editor-compatibility.md`
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: "AI Toolkit - MCP Editor Compatibility"
|
|
3
|
+
category: reference
|
|
4
|
+
service: ai-toolkit
|
|
5
|
+
tags: [mcp, editors, compatibility, codex, cursor]
|
|
6
|
+
version: "1.0.0"
|
|
7
|
+
created: "2026-04-12"
|
|
8
|
+
last_updated: "2026-04-12"
|
|
9
|
+
description: "Official MCP support matrix and native config targets for editors supported by ai-toolkit."
|
|
10
|
+
---
|
|
11
|
+
|
|
12
|
+
# MCP Editor Compatibility
|
|
13
|
+
|
|
14
|
+
## Overview
|
|
15
|
+
|
|
16
|
+
ai-toolkit keeps `.mcp.json` as the project-level canonical template format and can render that config into native editor MCP files where the editor exposes a stable, documented configuration surface.
|
|
17
|
+
|
|
18
|
+
## Supported Native Adapters
|
|
19
|
+
|
|
20
|
+
| Editor | Scope | Native Config Path | Adapter Behavior |
|
|
21
|
+
|--------|-------|--------------------|------------------|
|
|
22
|
+
| Claude Code | project + global | `.claude/settings.local.json`, `~/.claude/settings.json` | Merges `mcpServers` while preserving other settings keys |
|
|
23
|
+
| Cursor | project + global | `.cursor/mcp.json`, `~/.cursor/mcp.json` | Mirrors `mcpServers` directly |
|
|
24
|
+
| GitHub Copilot | project + global | `.github/mcp.json`, `~/.copilot/mcp-config.json` | Adds Copilot-required `type` and `tools` fields |
|
|
25
|
+
| Gemini CLI | project + global | `.gemini/settings.json`, `~/.gemini/settings.json` | Merges `mcpServers` into settings JSON |
|
|
26
|
+
| Windsurf | global | `~/.codeium/windsurf/mcp_config.json` | Global-only JSON config |
|
|
27
|
+
| Cline | global | `~/.cline/data/settings/cline_mcp_settings.json` | Global-only JSON config |
|
|
28
|
+
| Augment | global | `~/.augment/settings.json` | Global-only JSON settings file |
|
|
29
|
+
| Codex CLI | global | `~/.codex/config.toml` | Renders JSON templates as TOML `mcp_servers` tables |
|
|
30
|
+
|
|
31
|
+
## Unsupported for Automatic Install
|
|
32
|
+
|
|
33
|
+
These editors are still supported by ai-toolkit for rules and instructions, but ai-toolkit does not currently auto-write MCP config because a stable official file target was not adopted:
|
|
34
|
+
|
|
35
|
+
| Editor | Reason |
|
|
36
|
+
|--------|--------|
|
|
37
|
+
| Roo Code | MCP support exists, but no verified official file path was adopted in ai-toolkit |
|
|
38
|
+
| Aider | No verified native MCP config surface was adopted in ai-toolkit |
|
|
39
|
+
| Google Antigravity | MCP can be configured via UI/import flows, but no stable file target was adopted in ai-toolkit |
|
|
40
|
+
|
|
41
|
+
## CLI
|
|
42
|
+
|
|
43
|
+
```bash
|
|
44
|
+
ai-toolkit mcp editors
|
|
45
|
+
ai-toolkit mcp install --editor cursor --scope project github --target .
|
|
46
|
+
ai-toolkit mcp install --editor codex context7
|
|
47
|
+
ai-toolkit mcp remove github --editor cursor --scope project --target .
|
|
48
|
+
```
|
|
49
|
+
|
|
50
|
+
## Install Flow Integration
|
|
51
|
+
|
|
52
|
+
When `.mcp.json` exists in a project, `ai-toolkit install --local` mirrors its servers into:
|
|
53
|
+
- `.claude/settings.local.json`
|
|
54
|
+
- `.cursor/mcp.json` when `--editors cursor` is selected
|
|
55
|
+
- `.github/mcp.json` when `--editors copilot` is selected
|
|
56
|
+
|
|
57
|
+
Global-only clients are configured explicitly via `ai-toolkit mcp install --editor ...`.
|
|
58
|
+
|
|
59
|
+
## Related
|
|
60
|
+
|
|
61
|
+
- [PATH: kb/reference/mcp-templates.md] — template catalog and CLI
|
|
62
|
+
- [PATH: kb/reference/extension-api.md] — extension API surface
|
|
@@ -2,33 +2,58 @@
|
|
|
2
2
|
title: "MCP Server Templates"
|
|
3
3
|
category: reference
|
|
4
4
|
service: ai-toolkit
|
|
5
|
-
tags: [mcp, templates, servers, configuration]
|
|
6
|
-
version: "1.
|
|
5
|
+
tags: [mcp, templates, servers, configuration, editors]
|
|
6
|
+
version: "1.1.0"
|
|
7
7
|
created: "2026-04-07"
|
|
8
|
-
last_updated: "2026-04-
|
|
9
|
-
description: "Reference for 25 MCP server
|
|
8
|
+
last_updated: "2026-04-12"
|
|
9
|
+
description: "Reference for 25 MCP server templates plus native editor MCP installation support."
|
|
10
10
|
---
|
|
11
11
|
|
|
12
12
|
# MCP Server Templates
|
|
13
13
|
|
|
14
14
|
## Overview
|
|
15
15
|
|
|
16
|
-
ai-toolkit ships 25 ready-to-use MCP server configuration templates in `app/mcp-templates/`. Each template is a JSON file that defines the `mcpServers` block for a specific service. Templates
|
|
16
|
+
ai-toolkit ships 25 ready-to-use MCP server configuration templates in `app/mcp-templates/`. Each template is a JSON file that defines the canonical `mcpServers` block for a specific service. Templates can be merged into the project's `.mcp.json` and rendered into editor-native MCP config files via the `ai-toolkit mcp` CLI subcommand.
|
|
17
17
|
|
|
18
18
|
## CLI
|
|
19
19
|
|
|
20
20
|
```bash
|
|
21
21
|
ai-toolkit mcp list # List all available templates
|
|
22
|
+
ai-toolkit mcp editors # List editors with native MCP adapters
|
|
22
23
|
ai-toolkit mcp show <name> # Print a template's JSON config
|
|
23
24
|
ai-toolkit mcp add <name> # Merge a template into .mcp.json
|
|
24
25
|
ai-toolkit mcp add <n1> <n2> # Add multiple templates at once
|
|
25
|
-
ai-toolkit mcp
|
|
26
|
+
ai-toolkit mcp install --editor cursor --scope project github --target .
|
|
27
|
+
ai-toolkit mcp install --editor codex context7
|
|
28
|
+
ai-toolkit mcp remove <name> # Remove from .mcp.json or native editor config
|
|
26
29
|
```
|
|
27
30
|
|
|
28
31
|
**Implementation:** `scripts/mcp_manager.py`
|
|
29
32
|
|
|
30
33
|
The `add` command merges the `mcpServers` block from the template into `.mcp.json`. If `.mcp.json` does not exist it is created. If the server name already exists in `.mcp.json`, the entry is overwritten with the template version.
|
|
31
34
|
|
|
35
|
+
The `install` command renders the same canonical template into an editor-native config format:
|
|
36
|
+
- JSON clients with `mcpServers` blocks: Claude Code, Cursor, Gemini CLI, Windsurf, Cline, Augment
|
|
37
|
+
- JSON clients with additional transport metadata: GitHub Copilot
|
|
38
|
+
- TOML clients: Codex CLI (`[mcp_servers.<name>]`)
|
|
39
|
+
|
|
40
|
+
When `install` runs with `--scope project`, ai-toolkit also updates the project's `.mcp.json` so it remains the source of truth for later syncs.
|
|
41
|
+
|
|
42
|
+
## Editor Support Matrix
|
|
43
|
+
|
|
44
|
+
| Editor | Scope | Native Config Path | Notes |
|
|
45
|
+
|--------|-------|--------------------|-------|
|
|
46
|
+
| `claude` | project + global | `.claude/settings.local.json`, `~/.claude/settings.json` | Preserves existing hooks and env keys |
|
|
47
|
+
| `cursor` | project + global | `.cursor/mcp.json`, `~/.cursor/mcp.json` | Mirrors canonical `mcpServers` |
|
|
48
|
+
| `copilot` | project + global | `.github/mcp.json`, `~/.copilot/mcp-config.json` | Adds `type` and `tools: ["*"]` automatically |
|
|
49
|
+
| `gemini` | project + global | `.gemini/settings.json`, `~/.gemini/settings.json` | Uses Gemini CLI `mcpServers` format |
|
|
50
|
+
| `windsurf` | global | `~/.codeium/windsurf/mcp_config.json` | Global-only official config |
|
|
51
|
+
| `cline` | global | `~/.cline/data/settings/cline_mcp_settings.json` | Global-only official config |
|
|
52
|
+
| `augment` | global | `~/.augment/settings.json` | Global-only settings file |
|
|
53
|
+
| `codex` | global | `~/.codex/config.toml` | Rendered as TOML `mcp_servers` tables |
|
|
54
|
+
|
|
55
|
+
Project-local `ai-toolkit install --local` also mirrors `.mcp.json` into Claude project settings plus selected project editors that have official repository/workspace MCP files (`cursor`, `copilot`).
|
|
56
|
+
|
|
32
57
|
## Template List
|
|
33
58
|
|
|
34
59
|
| Name | Description | Required Env Vars |
|
|
@@ -108,3 +133,4 @@ export GITHUB_PERSONAL_ACCESS_TOKEN=ghp_...
|
|
|
108
133
|
|
|
109
134
|
- [PATH: kb/reference/extension-api.md] — `mcp add` as part of the extension API
|
|
110
135
|
- [PATH: kb/reference/architecture-overview.md] — overall install model
|
|
136
|
+
- [PATH: kb/reference/mcp-editor-compatibility.md] — native editor MCP support matrix
|