one-code-extension 0.1.4 → 0.3.0
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/LICENSE +20 -0
- package/README.md +200 -172
- package/agents/explore.md +9 -6
- package/agents/general-purpose.md +1 -1
- package/agents/plan.md +6 -4
- package/docs/guide/README.md +52 -0
- package/docs/guide/bring-your-claude-code-setup.md +126 -0
- package/docs/guide/configuration.md +171 -0
- package/docs/guide/differences-from-claude-code.md +150 -0
- package/docs/guide/doctor.md +86 -0
- package/docs/guide/hooks.md +109 -0
- package/docs/guide/installation.md +124 -0
- package/docs/guide/permissions-modes-and-auto-mode.md +450 -0
- package/docs/guide/providers-and-models.md +194 -0
- package/docs/guide/reference.md +224 -0
- package/docs/guide/sessions-and-context.md +190 -0
- package/docs/guide/skills-plugins-and-mcp.md +176 -0
- package/docs/guide/subagents-and-workflows.md +193 -0
- package/docs/guide/tasks-and-background-work.md +111 -0
- package/docs/guide/terminal-interface.md +155 -0
- package/docs/guide/tools.md +175 -0
- package/docs/guide/troubleshooting.md +175 -0
- package/extensions/ask-user/index.ts +65 -71
- package/extensions/ask-user/questions.ts +15 -28
- package/extensions/ask-user/widget.ts +533 -0
- package/extensions/auto-mode/actions.ts +9 -26
- package/extensions/auto-mode/classifier-prompt.ts +127 -0
- package/extensions/auto-mode/classifier.ts +305 -227
- package/extensions/auto-mode/config.ts +279 -77
- package/extensions/auto-mode/defaults.ts +17 -60
- package/extensions/auto-mode/instructions.ts +2 -1
- package/extensions/auto-mode/model-picker.ts +53 -31
- package/extensions/auto-mode/model-select.ts +153 -82
- package/extensions/auto-mode/paths.ts +13 -1
- package/extensions/auto-mode/pause.ts +8 -0
- package/extensions/auto-mode/prompt.ts +205 -238
- package/extensions/auto-mode/recoverability.ts +229 -0
- package/extensions/auto-mode/rules.ts +92 -75
- package/extensions/auto-mode/safety-floor.ts +43 -12
- package/extensions/auto-mode/sensitive.ts +11 -0
- package/extensions/auto-mode/setup-run.ts +245 -0
- package/extensions/auto-mode/setup.ts +235 -0
- package/extensions/auto-mode/shell-analysis.ts +332 -26
- package/extensions/auto-mode/transcript.ts +102 -0
- package/extensions/background/index.ts +256 -43
- package/extensions/background/monitor-batch.ts +58 -0
- package/extensions/background/registry.ts +9 -0
- package/extensions/background/wakeup.ts +45 -0
- package/extensions/bash/background.ts +47 -22
- package/extensions/bash/guards.ts +229 -0
- package/extensions/bash/index.ts +81 -19
- package/extensions/branding/index.ts +44 -18
- package/extensions/branding/startup.ts +23 -8
- package/extensions/claude-compat/index.ts +17 -2
- package/extensions/claude-context/index.ts +41 -12
- package/extensions/clear/index.ts +27 -0
- package/extensions/compaction/fit.ts +121 -0
- package/extensions/compaction/index.ts +176 -71
- package/extensions/compaction/prompt.ts +21 -1
- package/extensions/context-budget/budget.ts +61 -0
- package/extensions/context-budget/index.ts +66 -0
- package/extensions/context-management/index.ts +40 -16
- package/extensions/doctor/build.ts +226 -0
- package/extensions/doctor/cli.ts +99 -0
- package/extensions/doctor/compat.ts +532 -0
- package/extensions/doctor/dependencies.ts +186 -0
- package/extensions/doctor/fix-prompt.ts +125 -0
- package/extensions/doctor/index.ts +308 -0
- package/extensions/doctor/models.ts +231 -0
- package/extensions/doctor/presets.ts +208 -0
- package/extensions/doctor/report.ts +189 -0
- package/extensions/doctor/update-lookup.ts +46 -0
- package/extensions/doctor/viewer.ts +124 -0
- package/extensions/effort/index.ts +41 -4
- package/extensions/effort/slider.ts +33 -2
- package/extensions/file-tracker/index.ts +143 -20
- package/extensions/file-tracker/replay.ts +46 -0
- package/extensions/file-tracker/tracker.ts +51 -4
- package/extensions/footer/footer-line.ts +207 -0
- package/extensions/footer/index.ts +152 -0
- package/extensions/footer/pr.ts +53 -0
- package/extensions/hooks/executor.ts +57 -20
- package/extensions/hooks/formatter-notice.ts +76 -0
- package/extensions/hooks/index.ts +314 -73
- package/extensions/hooks/matcher.ts +35 -1
- package/extensions/hooks/plugin-hooks.ts +3 -3
- package/extensions/hooks/protocol.ts +58 -0
- package/extensions/hooks/subagent-bridge.ts +77 -0
- package/extensions/hooks/trust.ts +15 -4
- package/extensions/init/index.ts +26 -0
- package/extensions/init/prompt.ts +40 -0
- package/extensions/interrupted/index.ts +35 -0
- package/extensions/interrupted/line.ts +9 -0
- package/extensions/lib/abort.ts +15 -0
- package/extensions/lib/agent-loader.ts +183 -0
- package/extensions/lib/anthropic-payload.ts +15 -0
- package/extensions/lib/atomic-write.ts +56 -0
- package/extensions/lib/bridge-watch.ts +20 -0
- package/extensions/lib/cache-retention.ts +60 -0
- package/extensions/lib/capability-index.ts +466 -0
- package/extensions/lib/claude-context.ts +318 -27
- package/extensions/lib/claude-settings.ts +64 -0
- package/extensions/lib/consent-preview.ts +30 -0
- package/extensions/lib/deferred.ts +144 -13
- package/extensions/lib/favorites.ts +43 -0
- package/extensions/lib/fetch-timeout.ts +15 -0
- package/extensions/lib/frontmatter.ts +31 -0
- package/extensions/lib/git.ts +44 -2
- package/extensions/lib/hook-gate.ts +90 -0
- package/extensions/lib/interrupt.ts +94 -0
- package/extensions/lib/mcp-overrides.ts +61 -0
- package/extensions/lib/mcp-share.ts +25 -0
- package/extensions/lib/mcp-status.ts +34 -0
- package/extensions/lib/memory.ts +41 -6
- package/extensions/lib/model-facts.generated.json +2480 -0
- package/extensions/lib/model-facts.ts +162 -0
- package/extensions/lib/model-policy.ts +145 -189
- package/extensions/lib/model-tier.ts +480 -64
- package/extensions/lib/model-unusable.ts +37 -0
- package/extensions/lib/notifications.ts +320 -1
- package/extensions/lib/one-code-settings.ts +63 -0
- package/extensions/lib/original-command.ts +71 -0
- package/extensions/lib/package-version.ts +31 -0
- package/extensions/lib/paths.ts +39 -4
- package/extensions/lib/permission-gate.ts +192 -0
- package/extensions/lib/persisted-output.ts +18 -0
- package/extensions/lib/pi-ai-estimate.ts +160 -0
- package/extensions/lib/pi-version.ts +1 -1
- package/extensions/lib/plan-mode-channels.ts +11 -0
- package/extensions/lib/plugin-overrides.ts +24 -0
- package/extensions/lib/plugin-root.ts +44 -0
- package/extensions/lib/plugins.ts +233 -54
- package/extensions/lib/prefix-warm-gate.ts +157 -0
- package/extensions/lib/process-tree.ts +56 -0
- package/extensions/lib/reminders.ts +321 -68
- package/extensions/lib/scratchpad.ts +11 -8
- package/extensions/lib/session-lifecycle.ts +28 -0
- package/extensions/lib/settings-channels.ts +14 -0
- package/extensions/lib/shell-tasks.ts +54 -0
- package/extensions/lib/skill-overrides.ts +86 -0
- package/extensions/lib/skill-scan.ts +110 -0
- package/extensions/lib/text-width.ts +267 -0
- package/extensions/lib/tui-render.ts +281 -54
- package/extensions/lib/usage-bus.ts +75 -0
- package/extensions/lib/usage-tracker.ts +67 -0
- package/extensions/lib/worktree-isolation.ts +170 -0
- package/extensions/lsp/client.ts +69 -12
- package/extensions/lsp/format.ts +12 -2
- package/extensions/lsp/index.ts +273 -84
- package/extensions/lsp/install-hints.ts +43 -0
- package/extensions/lsp/keep-alive.ts +19 -0
- package/extensions/lsp/plugin-servers.ts +331 -0
- package/extensions/lsp/watcher.ts +157 -0
- package/extensions/mcp/announce.ts +99 -0
- package/extensions/mcp/client.ts +181 -22
- package/extensions/mcp/config.ts +55 -24
- package/extensions/mcp/index.ts +586 -86
- package/extensions/mcp/oauth/browser.ts +26 -0
- package/extensions/mcp/oauth/callback.ts +104 -0
- package/extensions/mcp/oauth/flow.ts +68 -0
- package/extensions/mcp/oauth/provider.ts +147 -0
- package/extensions/mcp/oauth/store.ts +86 -0
- package/extensions/mcp/panel/keys.ts +34 -0
- package/extensions/mcp/panel/model.ts +62 -0
- package/extensions/mcp/panel/render.ts +141 -0
- package/extensions/mcp/panel/state.ts +108 -0
- package/extensions/mcp/schema.ts +83 -6
- package/extensions/mcp/trust.ts +340 -0
- package/extensions/memory/entries.ts +163 -0
- package/extensions/memory/index.ts +119 -2
- package/extensions/memory/open-external.ts +97 -0
- package/extensions/memory/panel.ts +124 -0
- package/extensions/model-default/index.ts +74 -0
- package/extensions/notebook/index.ts +36 -18
- package/extensions/notebook/notebook.ts +110 -17
- package/extensions/permissions/index.ts +1012 -247
- package/extensions/permissions/matcher.ts +488 -57
- package/extensions/permissions/modes.ts +55 -7
- package/extensions/permissions/project-trust.ts +81 -0
- package/extensions/permissions/protected-paths.ts +16 -3
- package/extensions/permissions/rule-prose.ts +79 -0
- package/extensions/permissions/session-grant.ts +91 -0
- package/extensions/permissions/settings.ts +112 -33
- package/extensions/permissions/subagent-gate.ts +57 -0
- package/extensions/plan-mode/index.ts +143 -33
- package/extensions/plan-mode/reminder.ts +16 -19
- package/extensions/plan-mode/viewer.ts +40 -31
- package/extensions/plugins/counts.ts +68 -0
- package/extensions/plugins/index.ts +496 -32
- package/extensions/plugins/install/install.ts +167 -0
- package/extensions/plugins/install/paths.ts +23 -0
- package/extensions/plugins/install/registry.ts +72 -0
- package/extensions/plugins/marketplace/git.ts +103 -0
- package/extensions/plugins/marketplace/official.ts +36 -0
- package/extensions/plugins/marketplace/parse.ts +94 -0
- package/extensions/plugins/marketplace/registry.ts +60 -0
- package/extensions/plugins/marketplace/sync.ts +146 -0
- package/extensions/plugins/marketplace/types.ts +128 -0
- package/extensions/plugins/panel/keys.ts +52 -0
- package/extensions/plugins/panel/render.ts +315 -0
- package/extensions/plugins/panel/rows.ts +230 -0
- package/extensions/plugins/panel/state.ts +333 -0
- package/extensions/recap/index.ts +215 -0
- package/extensions/recap/prompt.ts +44 -0
- package/extensions/recap/scheduler.ts +87 -0
- package/extensions/search-tools/index.ts +0 -0
- package/extensions/search-tools/tools.ts +7 -5
- package/extensions/skill/index.ts +360 -34
- package/extensions/skill/invoke.ts +185 -0
- package/extensions/skill/listing.ts +21 -0
- package/extensions/skill/panel/keys.ts +41 -0
- package/extensions/skill/panel/render.ts +91 -0
- package/extensions/skill/panel/state.ts +115 -0
- package/extensions/spinner/index.ts +110 -0
- package/extensions/spinner/line.ts +51 -0
- package/extensions/spinner/verbs.ts +201 -0
- package/extensions/subagents/agents.ts +88 -44
- package/extensions/subagents/default-model.ts +62 -32
- package/extensions/subagents/delegation-steer.ts +23 -0
- package/extensions/subagents/hand-back-review.ts +67 -0
- package/extensions/subagents/index.ts +1545 -346
- package/extensions/subagents/live-runs.ts +293 -0
- package/extensions/subagents/model-select.ts +252 -82
- package/extensions/subagents/outcome.ts +90 -0
- package/extensions/subagents/panel-keys.ts +41 -0
- package/extensions/subagents/panel-render.ts +357 -0
- package/extensions/subagents/panel-widget.ts +330 -0
- package/extensions/subagents/pending-claim.ts +45 -0
- package/extensions/subagents/prose.ts +105 -0
- package/extensions/subagents/runner.ts +674 -0
- package/extensions/subagents/runs.ts +68 -1
- package/extensions/subagents/send-to-main-tool.ts +55 -0
- package/extensions/subagents/session-turns.ts +138 -0
- package/extensions/subagents/shell-panel.ts +198 -0
- package/extensions/subagents/usage.ts +16 -4
- package/extensions/subagents/worktree.ts +13 -0
- package/extensions/system-prompt/environment.ts +5 -3
- package/extensions/system-prompt/git-status.ts +93 -0
- package/extensions/system-prompt/index.ts +23 -1
- package/extensions/system-prompt/template.ts +34 -4
- package/extensions/system-prompt/tiers/common.ts +31 -6
- package/extensions/system-prompt/tiers/low.ts +13 -3
- package/extensions/system-prompt/tiers/mid.ts +21 -8
- package/extensions/system-reminder/index.ts +53 -9
- package/extensions/tasks/index.ts +65 -16
- package/extensions/tasks/store.ts +76 -3
- package/extensions/tool-search/announce.ts +42 -0
- package/extensions/tool-search/index.ts +136 -13
- package/extensions/turn-duration/index.ts +60 -0
- package/extensions/turn-duration/line.ts +22 -0
- package/extensions/turn-duration/span.ts +41 -0
- package/extensions/turn-duration/verbs.ts +24 -0
- package/extensions/web/backends.ts +421 -0
- package/extensions/web/index.ts +178 -21
- package/extensions/web-fetch/index.ts +74 -18
- package/extensions/web-fetch/summarize.ts +1 -1
- package/extensions/workflow/agent-session.ts +182 -112
- package/extensions/workflow/globals.ts +129 -106
- package/extensions/workflow/index.ts +343 -28
- package/extensions/workflow/records.ts +118 -0
- package/extensions/workflow/run-manager.ts +80 -31
- package/extensions/workflow/saved-workflows.ts +2 -1
- package/extensions/workflow/script-worker.mjs +110 -0
- package/extensions/workflow/types.ts +74 -8
- package/extensions/workflow/viewer.ts +562 -0
- package/extensions/workflow/vm-runtime.ts +118 -22
- package/extensions/workflow/widget.ts +126 -18
- package/extensions/worktree/guards.ts +240 -0
- package/extensions/worktree/index.ts +30 -5
- package/extensions/worktree/rewrite.ts +32 -16
- package/package.json +20 -10
- package/skills/code-review/SKILL.md +165 -0
- package/skills/fewer-permission-prompts/SKILL.md +61 -0
- package/skills/security-review/SKILL.md +178 -0
- package/skills/simplify/SKILL.md +70 -0
- package/themes/{one-code-light.json → onecode-light.json} +6 -1
- package/themes/{one-code.json → onecode.json} +6 -1
- package/types/app.d.ts +8 -1
- package/types/community-packages.d.ts +45 -2
- package/docs/decisions/auto-mode.md +0 -526
- package/docs/decisions/branding.md +0 -127
- package/docs/decisions/code-review-remediation.md +0 -106
- package/docs/decisions/compaction.md +0 -140
- package/docs/decisions/distribution.md +0 -168
- package/docs/decisions/hooks.md +0 -64
- package/docs/decisions/lsp.md +0 -58
- package/docs/decisions/mcp.md +0 -104
- package/docs/decisions/memory-state.md +0 -170
- package/docs/decisions/model-policy.md +0 -126
- package/docs/decisions/modes.md +0 -178
- package/docs/decisions/skills-plugins.md +0 -56
- package/docs/decisions/subagents-workflows.md +0 -225
- package/docs/decisions/system-prompt.md +0 -98
- package/docs/decisions/tools.md +0 -407
- package/docs/decisions/tui.md +0 -217
- package/docs/decisions.md +0 -148
- package/extensions/subagents/child.ts +0 -414
- package/extensions/subagents/rpc-turns.ts +0 -123
- package/extensions/todo/index.ts +0 -133
- package/extensions/workflow/permission-gate.ts +0 -71
package/LICENSE
CHANGED
|
@@ -22,6 +22,26 @@ SOFTWARE.
|
|
|
22
22
|
|
|
23
23
|
---
|
|
24
24
|
|
|
25
|
+
ADDITIONAL NOTICE — AUTONOMOUS EXECUTION
|
|
26
|
+
|
|
27
|
+
This software runs a large language model as an autonomous agent. It reads,
|
|
28
|
+
writes and deletes files, runs shell commands, and calls network services on
|
|
29
|
+
your behalf, and in some modes it does so without asking you first.
|
|
30
|
+
|
|
31
|
+
Its permission rules, approval classifier and safety checks are best-effort
|
|
32
|
+
measures, not guarantees. A model can take a destructive or unintended action
|
|
33
|
+
that no rule matched, achieve a forbidden effect by a route the rules did not
|
|
34
|
+
anticipate, or be steered by content it reads. You are responsible for what you
|
|
35
|
+
authorize it to do, for the environment you run it in, and for keeping backups
|
|
36
|
+
and version control of anything you care about.
|
|
37
|
+
|
|
38
|
+
As stated in the MIT terms above, the software is provided "as is" and the
|
|
39
|
+
authors and copyright holders accept no liability for any damage, data loss,
|
|
40
|
+
cost, or other harm arising from its use, including actions taken by the model
|
|
41
|
+
it runs.
|
|
42
|
+
|
|
43
|
+
---
|
|
44
|
+
|
|
25
45
|
This package bundles or adapts work from other MIT-licensed projects:
|
|
26
46
|
|
|
27
47
|
- The language-server command table in `extensions/lsp/servers.ts` follows the
|
package/README.md
CHANGED
|
@@ -1,208 +1,236 @@
|
|
|
1
1
|
# One Code
|
|
2
2
|
|
|
3
|
-
**
|
|
3
|
+
**A familiar Claude Code experience, with your choice of model for every agent.**
|
|
4
4
|
|
|
5
|
-
One Code
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
5
|
+
One Code brings familiar Claude Code workflows to a terminal coding agent that
|
|
6
|
+
lets you choose the models. It includes subagents, plan mode, permissions,
|
|
7
|
+
skills, and git worktrees. Reuse your existing Claude Code setup, keep a capable model
|
|
8
|
+
in the main conversation, delegate routine work to a cheaper one, and switch
|
|
9
|
+
providers during a session.
|
|
10
10
|
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
11
|
+
- **Bring your setup.** Reuse `CLAUDE.md`, skills, commands, subagents, hooks,
|
|
12
|
+
permission rules, and MCP configuration.
|
|
13
|
+
- **Choose models per task.** The main session and its subagents can use
|
|
14
|
+
different models and providers: Anthropic, OpenAI, Gemini, OpenRouter, or
|
|
15
|
+
local models supported by [pi](https://github.com/earendil-works/pi).
|
|
16
|
+
- **Keep control as work grows.** Plan before editing, isolate changes in git
|
|
17
|
+
worktrees, and follow parallel agents from a live progress panel.
|
|
14
18
|
|
|
15
|
-
|
|
19
|
+
Built on pi. Free and open source under the MIT license. Works alongside
|
|
20
|
+
Claude Code, with the bundled app's state kept in `~/.onecode`.
|
|
16
21
|
|
|
17
|
-
|
|
22
|
+
<p align="center">
|
|
23
|
+
<img src="demo/onecode.gif" alt="One Code switching models and running an agentic task" width="820">
|
|
24
|
+
</p>
|
|
18
25
|
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
26
|
+
[User guide](docs/guide/README.md) ·
|
|
27
|
+
[Bring your Claude Code setup](docs/guide/bring-your-claude-code-setup.md) ·
|
|
28
|
+
[Differences from Claude Code](docs/guide/differences-from-claude-code.md) ·
|
|
29
|
+
[Command reference](docs/guide/reference.md)
|
|
30
|
+
|
|
31
|
+
## Get started
|
|
32
|
+
|
|
33
|
+
Requires **Node.js 22.19+**. Developed and verified on **macOS and Linux**;
|
|
34
|
+
WSL is also supported. Native Windows is currently untested.
|
|
23
35
|
|
|
24
36
|
```bash
|
|
25
37
|
npm install -g @one-ai/one-code
|
|
26
|
-
cd your-project
|
|
38
|
+
cd your-project
|
|
39
|
+
onecode
|
|
27
40
|
```
|
|
28
41
|
|
|
29
|
-
|
|
42
|
+
Inside One Code, run `/login` to connect a provider, then `/model` to choose a
|
|
43
|
+
model. You can also supply a provider key through an environment variable such
|
|
44
|
+
as `ANTHROPIC_API_KEY`, `OPENAI_API_KEY`, or `OPENROUTER_API_KEY`.
|
|
45
|
+
|
|
46
|
+
Open a project with an existing `CLAUDE.md` or `.claude/` setup to reuse it
|
|
47
|
+
immediately. For a new project, `/init` drafts a `CLAUDE.md`.
|
|
48
|
+
|
|
49
|
+
Not sure what is ready? `onecode doctor` (or `/doctor report` inside a session)
|
|
50
|
+
reports which providers have credentials, which model each role will use, what
|
|
51
|
+
of your Claude Code configuration was picked up, and which programs are missing;
|
|
52
|
+
`/doctor` runs the full checkup, where the model repairs the findings.
|
|
53
|
+
|
|
54
|
+
One Code is free; model access, usage charges, and rate limits depend on your
|
|
55
|
+
provider. See [Providers and models](docs/guide/providers-and-models.md) for
|
|
56
|
+
connection options.
|
|
57
|
+
|
|
58
|
+
### Other ways to install
|
|
59
|
+
|
|
60
|
+
**Homebrew** installs Node for you:
|
|
30
61
|
|
|
31
62
|
```bash
|
|
32
63
|
brew install isurumaduranga/one-ai/one-code
|
|
33
|
-
# or tap once, then it's just: brew tap isurumaduranga/one-ai && brew install one-code
|
|
34
64
|
```
|
|
35
65
|
|
|
36
|
-
|
|
66
|
+
**Already using pi?** Add the extensions to your existing installation:
|
|
67
|
+
|
|
68
|
+
```bash
|
|
69
|
+
pi install npm:one-code-extension
|
|
70
|
+
```
|
|
71
|
+
|
|
72
|
+
The app package, [`@one-ai/one-code`](https://www.npmjs.com/package/@one-ai/one-code),
|
|
73
|
+
bundles a pinned pi version and provides the `onecode` command. The extension
|
|
74
|
+
package, [`one-code-extension`](https://www.npmjs.com/package/one-code-extension),
|
|
75
|
+
runs on your own pi and is tested against pi 0.83–0.85. Use `pi` in place of
|
|
76
|
+
`onecode` for that installation.
|
|
77
|
+
|
|
78
|
+
The app opens in a full-screen terminal interface by default. See the
|
|
79
|
+
[installation guide](docs/guide/installation.md) for display settings and more
|
|
80
|
+
details.
|
|
81
|
+
|
|
82
|
+
## Put different models to work
|
|
83
|
+
|
|
84
|
+
A main conversation and a repository-wide investigation do not need the same
|
|
85
|
+
model. With One Code, you can keep your preferred model in charge while
|
|
86
|
+
subagents use another provider for exploration, tests, or review.
|
|
87
|
+
|
|
88
|
+
1. Choose the main model with `/model`.
|
|
89
|
+
2. Set the default for subagents and workflow agents with
|
|
90
|
+
`/subagent <provider/model-id>`.
|
|
91
|
+
3. Ask for delegated work, for example:
|
|
92
|
+
|
|
93
|
+
> Use subagents to investigate the authentication code and its tests.
|
|
94
|
+
> Have them report their findings, then make the fix in the main session.
|
|
95
|
+
|
|
96
|
+
Agent definitions in `.claude/agents/` can specify their own models, tools,
|
|
97
|
+
and instructions. Use `/agents` to follow their progress and `/model` to
|
|
98
|
+
change the main model as the task changes.
|
|
99
|
+
|
|
100
|
+
This gives you control over where you spend model capacity. Actual cost and
|
|
101
|
+
quality depend on the models, task, and amount of delegated work.
|
|
102
|
+
|
|
103
|
+
[Subagents and workflows →](docs/guide/subagents-and-workflows.md)
|
|
104
|
+
|
|
105
|
+
## Reuse the setup you already have
|
|
106
|
+
|
|
107
|
+
One Code reads Claude Code configuration directly, without an import step.
|
|
108
|
+
|
|
109
|
+
| Your configuration | How One Code uses it |
|
|
110
|
+
|---|---|
|
|
111
|
+
| `CLAUDE.md` | Project instructions, including nested files and `@path` imports. Falls back to `AGENTS.md` when no `CLAUDE.md` exists in a directory. |
|
|
112
|
+
| `.claude/skills/` and `.claude/commands/` | Discoverable skills and slash commands. |
|
|
113
|
+
| `.claude/agents/` | Subagent definitions with their model, tools, and instructions. |
|
|
114
|
+
| `.claude/settings.json` | `allow`, `deny`, and `ask` permission rules, plus supported command hooks. |
|
|
115
|
+
| `.mcp.json` | MCP servers with tools loaded on demand. |
|
|
116
|
+
| Installed Claude Code plugins | Plugin agents, skills, commands, and MCP servers, namespaced by plugin. |
|
|
117
|
+
|
|
118
|
+
Claude Code tool names such as `Read`, `Bash`, `Edit`, and `Task` work in
|
|
119
|
+
permission rules and hook matchers. One Code stores its own settings separately
|
|
120
|
+
and treats `~/.claude` as read-only.
|
|
121
|
+
|
|
122
|
+
Compatibility covers these configuration and workflow surfaces. Features and
|
|
123
|
+
skills that require Claude Code's own hosted or desktop services are not
|
|
124
|
+
included.
|
|
125
|
+
|
|
126
|
+
[Configuration details →](docs/guide/bring-your-claude-code-setup.md) ·
|
|
127
|
+
[Skills, plugins, and MCP →](docs/guide/skills-plugins-and-mcp.md)
|
|
128
|
+
|
|
129
|
+
## Workflows that scale with the task
|
|
130
|
+
|
|
131
|
+
### Subagents and git worktrees
|
|
132
|
+
|
|
133
|
+
Give an investigation its own context window and bring the result back to the
|
|
134
|
+
main conversation. Subagents run in the background, can receive follow-up
|
|
135
|
+
messages, and can fork the current conversation when they need its context.
|
|
136
|
+
Three agent definitions ship with One Code: `general-purpose`, `explore`, and
|
|
137
|
+
`plan`.
|
|
138
|
+
|
|
139
|
+
For parallel edits, give agents separate git worktrees. You can also move the
|
|
140
|
+
whole session into a worktree with `enter_worktree` and leave it with
|
|
141
|
+
`exit_worktree`.
|
|
142
|
+
|
|
143
|
+
### Ultracode workflows
|
|
144
|
+
|
|
145
|
+
Include **`ultracode`** in a request for a broad audit, migration, or review.
|
|
146
|
+
The model writes a JavaScript workflow to coordinate agents in parallel, with
|
|
147
|
+
progress visible in `/workflows`. Use `/effort ultracode` to keep this behavior
|
|
148
|
+
active across turns.
|
|
149
|
+
|
|
150
|
+
Resume an interrupted run to reuse completed agent calls whose inputs still
|
|
151
|
+
match. Save reusable scripts in `.claude/workflows/` to invoke them by name.
|
|
152
|
+
Optional output-token targets stop new and queued agents once reached;
|
|
153
|
+
already-running agents can finish above the target.
|
|
154
|
+
|
|
155
|
+
### Permissions and planning
|
|
37
156
|
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
157
|
+
**Auto mode is the default.** A classifier evaluates actions that need review,
|
|
158
|
+
while permission rules and deterministic checks enforce additional restrictions.
|
|
159
|
+
`deny` rules take precedence over `allow` rules. Trust approval covers
|
|
160
|
+
project-provided hooks, MCP servers, and allow rules.
|
|
42
161
|
|
|
43
|
-
|
|
162
|
+
Press **ctrl+q** to cycle through manual, accept-edits, plan, and auto modes.
|
|
163
|
+
Plan mode lets the agent investigate and write a dedicated plan file before
|
|
164
|
+
you approve implementation. Use `/permissions` to inspect rules and `/auto-mode`
|
|
165
|
+
to configure the classifier.
|
|
44
166
|
|
|
45
|
-
|
|
46
|
-
|
|
167
|
+
The permission system is an application-level control. For OS-level isolation,
|
|
168
|
+
run One Code inside a container. The guarantees and the known gaps are spelled
|
|
169
|
+
out in the guide.
|
|
47
170
|
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
- **OpenRouter** ([openrouter.ai](https://openrouter.ai)) — sign up, create a
|
|
51
|
-
key (or just OAuth from inside One Code). Free models carry a `:free` suffix —
|
|
52
|
-
`nvidia/nemotron-3-ultra-550b-a55b:free` is genuinely good.
|
|
171
|
+
[Permissions and modes →](docs/guide/permissions-modes-and-auto-mode.md) ·
|
|
172
|
+
[Hooks →](docs/guide/hooks.md)
|
|
53
173
|
|
|
54
|
-
|
|
174
|
+
## Everyday tools
|
|
175
|
+
|
|
176
|
+
| Capability | What you get |
|
|
177
|
+
|---|---|
|
|
178
|
+
| Code and files | Read, write, edit, shell commands, background processes, repository search, and notebook editing. |
|
|
179
|
+
| Web | Search and fetch, with provider search or Brave, Tavily, and Exa fallbacks. |
|
|
180
|
+
| Diagnostics | Language-server diagnostics after edits; install the relevant server on your `PATH`. |
|
|
181
|
+
| Long sessions | Per-repository memory, a session scratchpad, and context compaction. |
|
|
182
|
+
| Task tracking | A pinned progress widget, background monitors, and scheduled wake-ups. |
|
|
183
|
+
| Tool discovery | Deferred tools loaded when needed to reduce prompt overhead. |
|
|
184
|
+
| Reasoning and appearance | `/effort` or **shift+tab** for reasoning effort; `onecode` and `onecode-light` themes. |
|
|
185
|
+
| Customization | Extend One Code with pi extensions, themes, and settings. |
|
|
186
|
+
|
|
187
|
+
The bundled skills include `simplify`, `code-review`, `security-review`, and
|
|
188
|
+
`fewer-permission-prompts`. A project skill with the same name takes precedence.
|
|
189
|
+
|
|
190
|
+
For scripting and session management:
|
|
55
191
|
|
|
56
192
|
```bash
|
|
57
|
-
|
|
58
|
-
|
|
193
|
+
onecode -p "Explain how authentication works in this repository"
|
|
194
|
+
onecode -c # continue the previous session
|
|
195
|
+
onecode --mode json # JSON event output
|
|
196
|
+
onecode --permission-mode plan # start in plan mode
|
|
59
197
|
```
|
|
60
198
|
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
`OPENAI_API_KEY`, and friends are picked up automatically.
|
|
65
|
-
|
|
66
|
-
*(On the pi-package install, the same applies with `pi` as the command.)*
|
|
67
|
-
|
|
68
|
-
---
|
|
69
|
-
|
|
70
|
-
## Why One Code
|
|
71
|
-
|
|
72
|
-
- **Bring your own model.** Not tied to one vendor. Switch mid-session with
|
|
73
|
-
`/model`, or drive a cheap local model for routine work and a frontier model
|
|
74
|
-
for the hard parts.
|
|
75
|
-
- **Your Claude Code setup already works.** `CLAUDE.md`, `.claude/commands`,
|
|
76
|
-
`.claude/skills`, `.claude/agents`, `.mcp.json`, installed plugins, and
|
|
77
|
-
`settings.json` permission rules are all picked up unchanged. Nothing to port.
|
|
78
|
-
- **The features that make Claude Code good live in the harness, not the model** —
|
|
79
|
-
and One Code brings all of them across.
|
|
80
|
-
|
|
81
|
-
---
|
|
82
|
-
|
|
83
|
-
## What you get
|
|
84
|
-
|
|
85
|
-
### 🤖 Subagents
|
|
86
|
-
Delegate work to child agents that each get their own context window, so only
|
|
87
|
-
the answer comes back — not the noise. Define them as markdown in
|
|
88
|
-
`.claude/agents/`, pick their model per agent, or `fork` one that inherits your
|
|
89
|
-
conversation. Run them in the background and message them while they work, or
|
|
90
|
-
isolate each in its own git worktree (below). Three ship in the box:
|
|
91
|
-
`general-purpose`, `explore`, and `plan`.
|
|
92
|
-
|
|
93
|
-
### ⚡ Ultracode workflows
|
|
94
|
-
For big jobs — a broad audit, a migration, a review worth double-checking — say
|
|
95
|
-
**`ultracode`** and the model writes a short JavaScript script that fans work out
|
|
96
|
-
across many agents in parallel. Runs go to the background with a live progress
|
|
97
|
-
panel; every run is journaled, so re-running replays the unchanged parts for
|
|
98
|
-
free. Save scripts in `.claude/workflows/` to invoke by name.
|
|
99
|
-
|
|
100
|
-
### 🔒 Permissions & auto mode
|
|
101
|
-
A real permission gate reads your existing `allow`/`deny`/`ask` rules from
|
|
102
|
-
`.claude/settings.json` (`deny` always wins). Cycle modes with **ctrl+q** —
|
|
103
|
-
manual → accept-edits → plan → **auto**. Auto mode removes routine prompts
|
|
104
|
-
*without* removing the boundary: a classifier screens each action, reads pass
|
|
105
|
-
freely, and risky operations (writes outside your project, credential paths,
|
|
106
|
-
force pushes, `curl | bash`) get stopped unless *you* named them. A deterministic
|
|
107
|
-
safety floor protects the agent's own config no matter what the model decides.
|
|
108
|
-
|
|
109
|
-
### 📋 Plan mode
|
|
110
|
-
Enter a read-only planning mode where the model can only write to a dedicated
|
|
111
|
-
plan file. Review the finished plan in an approval dialog before a single line of
|
|
112
|
-
code changes. The plan survives context compaction, and you can edit the file
|
|
113
|
-
yourself while it works.
|
|
114
|
-
|
|
115
|
-
### 🌿 Git worktrees
|
|
116
|
-
Send the whole session into an isolated git worktree with `enter_worktree` —
|
|
117
|
-
branched from your current HEAD under `.claude/worktrees/`, so every command and
|
|
118
|
-
relative path runs there and your working tree stays untouched until you
|
|
119
|
-
`exit_worktree`. Subagents can each take their own worktree too, so a fan-out
|
|
120
|
-
that edits files runs in parallel without ever colliding.
|
|
121
|
-
|
|
122
|
-
### 🧩 Skills, plugins & MCP
|
|
123
|
-
Standard [Agent Skills](https://agentskills.io) from `.claude/skills/`, whole
|
|
124
|
-
Claude Code **plugins** (their agents, skills, commands, and MCP servers, all
|
|
125
|
-
namespaced), and any **MCP server** from `.mcp.json` — every MCP tool is loaded
|
|
126
|
-
on demand so it never bloats the prompt.
|
|
127
|
-
|
|
128
|
-
### 🪝 Hooks
|
|
129
|
-
Claude Code command hooks run unchanged — `PreToolUse`, `PostToolUse`,
|
|
130
|
-
`UserPromptSubmit`, `SessionStart`, `Stop`, and more — with the same stdin JSON,
|
|
131
|
-
exit-code semantics, and output envelope. Project hooks run only after a one-time
|
|
132
|
-
consent prompt.
|
|
133
|
-
|
|
134
|
-
### 🧠 Memory & long sessions
|
|
135
|
-
Per-repo auto-memory that persists facts across sessions, a session scratchpad,
|
|
136
|
-
and Claude Code's own compaction prompt so long conversations shrink cleanly
|
|
137
|
-
instead of falling off a cliff. On Anthropic, old thinking is trimmed
|
|
138
|
-
automatically to keep sessions cheap.
|
|
139
|
-
|
|
140
|
-
### 🛠️ The same tool surface as Claude Code
|
|
141
|
-
`read`, `write`, `edit`, `bash` (with background runs), `grep`, `find`, `ls`,
|
|
142
|
-
`todo_write`, `notebook_edit`, `web_search`, `web_fetch`, `lsp_diagnostics`
|
|
143
|
-
(live language-server diagnostics after edits), `ask_user_question`, task
|
|
144
|
-
tracking, background monitors, scheduled wake-ups — and `tool_search`, which
|
|
145
|
-
keeps rarely-used schemas out of the prompt until they're needed. On Anthropic
|
|
146
|
-
and recent OpenAI models this uses the provider's native deferred-tool
|
|
147
|
-
mechanism, so loading a tool never invalidates your cached prompt.
|
|
148
|
-
|
|
149
|
-
Every Claude Code tool has a counterpart here, so muscle memory and rules carry
|
|
150
|
-
over: Claude Code's own PascalCase names — `Read`, `Bash`, `Edit`, `Task`,
|
|
151
|
-
`WebFetch`, `TodoWrite`, `EnterWorktree`, and the rest — are accepted verbatim in
|
|
152
|
-
your `.claude/settings.json` permission rules and hook matchers, mapped to the
|
|
153
|
-
matching tool automatically.
|
|
154
|
-
|
|
155
|
-
### 🎚️ Reasoning effort & 🎨 themes
|
|
156
|
-
An `/effort` slider from `minimal` to `max` (and `ultracode` past the end), on
|
|
157
|
-
the same dial shift+tab cycles. Two themes ship — `one-code` (dark) and
|
|
158
|
-
`one-code-light` — a warm clay accent in the spirit of Claude Code's terminal.
|
|
159
|
-
|
|
160
|
-
---
|
|
161
|
-
|
|
162
|
-
## Everything else, briefly
|
|
163
|
-
|
|
164
|
-
| | |
|
|
165
|
-
|---|---|
|
|
166
|
-
| **Slash commands** | `/permissions`, `/auto-mode`, `/agents`, `/skills`, `/todos`, `/subagent`, `/effort`, `/workflows`, `/plugins`, `/mcp`, `/lsp`, and every plugin command (namespaced). |
|
|
167
|
-
| **Ported system prompt** | Claude Code's system prompt, adapted and tiered by model capability so smaller models get more guidance. |
|
|
168
|
-
| **Steering** | `<system-reminder>` nudges, read-before-write and stale-edit guards, and denial feedback that the model actually learns from. |
|
|
169
|
-
| **Other modes** | `pi -p "…"` one-shot · `pi -c` continue · `pi --mode json` for scripts · `pi --permission-mode plan` · `pi --model <provider/id>`. |
|
|
199
|
+
See [Tools](docs/guide/tools.md) for every tool the model can call and the
|
|
200
|
+
[command reference](docs/guide/reference.md) for every command, shortcut,
|
|
201
|
+
flag, and environment variable.
|
|
170
202
|
|
|
171
|
-
|
|
203
|
+
## Documentation
|
|
204
|
+
|
|
205
|
+
The [user guide](docs/guide/README.md) covers everything: installation,
|
|
206
|
+
providers and models, the terminal interface, configuration, permissions and
|
|
207
|
+
auto mode, hooks, subagents and workflows, skills, plugins, and MCP, tools,
|
|
208
|
+
sessions and context, background work, the doctor, differences from Claude
|
|
209
|
+
Code, troubleshooting, and a full reference.
|
|
210
|
+
|
|
211
|
+
## Compatibility notes
|
|
212
|
+
|
|
213
|
+
- **Providers:** end-to-end verification has focused on Anthropic, OpenAI,
|
|
214
|
+
and OpenRouter. Other providers are less exercised.
|
|
215
|
+
- **Web search:** set `BRAVE_SEARCH_API_KEY` or `TAVILY_API_KEY` when using a
|
|
216
|
+
provider without native search. With neither key, the fallback is Exa's
|
|
217
|
+
rate-limited keyless endpoint; One Code labels its results.
|
|
218
|
+
- **Native Windows:** hooks and background shells currently assume `/bin/sh`.
|
|
219
|
+
Use WSL until native Windows support is verified.
|
|
172
220
|
|
|
173
221
|
## Install from source
|
|
174
222
|
|
|
223
|
+
This installs the local extensions into an existing pi installation:
|
|
224
|
+
|
|
175
225
|
```bash
|
|
176
226
|
git clone https://github.com/IsuruMaduranga/one-code
|
|
177
|
-
cd one-code
|
|
178
|
-
|
|
179
|
-
|
|
227
|
+
cd one-code
|
|
228
|
+
npm install
|
|
229
|
+
cd ..
|
|
230
|
+
pi install ./one-code
|
|
231
|
+
pi list
|
|
180
232
|
```
|
|
181
233
|
|
|
182
|
-
## A real boundary, not a leap of faith
|
|
183
|
-
|
|
184
|
-
Like Claude Code, One Code's security model is the **permission system plus auto
|
|
185
|
-
mode**, not a promise that the model will behave. Every action is gated: `deny`
|
|
186
|
-
rules always win, risky operations get stopped, and auto mode's classifier keeps
|
|
187
|
-
you in flow without dropping the boundary. Want an OS-level hard wall on top? Run
|
|
188
|
-
pi inside a container — the permission gate and the container compose.
|
|
189
|
-
|
|
190
|
-
## Good to know
|
|
191
|
-
|
|
192
|
-
- **Web search** uses your provider's own search API (OpenAI, Anthropic,
|
|
193
|
-
Gemini), so it needs a provider that offers one.
|
|
194
|
-
- **LSP diagnostics** need the language server on your `PATH` (e.g.
|
|
195
|
-
`npm i -g typescript-language-server typescript`).
|
|
196
|
-
- Verified end-to-end on Anthropic and OpenAI models, and through **OpenRouter**
|
|
197
|
-
(which brokers many open models — DeepSeek, Llama, Qwen, and more); other
|
|
198
|
-
providers work but are less exercised.
|
|
199
|
-
- **Platforms:** developed and verified on **macOS and Linux**; **WSL** works
|
|
200
|
-
the same way (it *is* Linux). Native Windows is **untested best-effort** for
|
|
201
|
-
now: pi itself requires a bash there (Git Bash — see pi's Windows docs), and
|
|
202
|
-
One Code has known gaps on native Windows (hooks and background shells assume
|
|
203
|
-
`/bin/sh`). Don't rely on it until a Windows smoke test lands in a future
|
|
204
|
-
release.
|
|
205
|
-
|
|
206
234
|
## License
|
|
207
235
|
|
|
208
|
-
MIT
|
|
236
|
+
[MIT](LICENSE). Contributions welcome.
|
package/agents/explore.md
CHANGED
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: explore
|
|
3
|
-
description:
|
|
4
|
-
|
|
3
|
+
description: Fast read-only search agent for locating code. Use it to find files by pattern (eg. "src/components/**/*.tsx"), grep for symbols or keywords (eg. "API endpoints"), or answer "where is X defined / which files reference Y". Do NOT use it for code review, design-doc auditing, cross-file consistency checks, or open-ended analysis — it reads excerpts rather than whole files and will miss content past its read window. When calling, specify search breadth: "quick" for a single targeted lookup, "medium" for moderate exploration, or "very thorough" to search across multiple locations and naming conventions.
|
|
4
|
+
disallowedTools: Edit, Write, NotebookEdit, Agent
|
|
5
5
|
---
|
|
6
6
|
|
|
7
|
-
You are a codebase reconnaissance agent. You can read and search
|
|
8
|
-
|
|
7
|
+
You are a codebase reconnaissance agent. You can read and search — including
|
|
8
|
+
read-only shell commands (git log, ls, wc) — but you must never modify
|
|
9
|
+
anything: no edits, no writes, no state-changing commands.
|
|
9
10
|
|
|
10
11
|
Your job is to find things and report *where they are*, compressed. The agent that
|
|
11
12
|
delegated to you is spending its context on other work, so do not return file
|
|
@@ -16,8 +17,10 @@ Method:
|
|
|
16
17
|
- Search broadly first (multiple patterns, several naming conventions, plausible
|
|
17
18
|
synonyms), then read only the excerpts that decide the question.
|
|
18
19
|
- Follow the conventions you observe rather than assuming a layout.
|
|
19
|
-
-
|
|
20
|
-
|
|
20
|
+
- Calibrate to the requested search breadth: "quick" means one targeted lookup,
|
|
21
|
+
"medium" moderate exploration, "very thorough" means checking alternative
|
|
22
|
+
locations, spellings, and naming conventions before concluding something does
|
|
23
|
+
not exist. With no breadth given, default to medium.
|
|
21
24
|
|
|
22
25
|
Report as a short list of findings, each with `path:line` and one line of what is
|
|
23
26
|
there. State explicitly if something does not appear to exist — a confident
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: general-purpose
|
|
3
|
-
description: General-purpose agent for researching complex questions, searching for code, and executing multi-step tasks.
|
|
3
|
+
description: General-purpose agent for researching complex questions, searching for code, and executing multi-step tasks. When you are searching for a keyword or file and are not confident that you will find the right match in the first few tries, use this agent to perform the search for you.
|
|
4
4
|
---
|
|
5
5
|
|
|
6
6
|
You are a general-purpose engineering agent working on a delegated task.
|
package/agents/plan.md
CHANGED
|
@@ -1,11 +1,13 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: plan
|
|
3
|
-
description: Software architect agent for designing implementation plans. Use when you need
|
|
4
|
-
|
|
3
|
+
description: Software architect agent for designing implementation plans. Use this when you need to plan the implementation strategy for a task. Returns step-by-step plans, identifies critical files, and considers architectural trade-offs. Read-only.
|
|
4
|
+
disallowedTools: Edit, Write, NotebookEdit, Agent
|
|
5
5
|
---
|
|
6
6
|
|
|
7
|
-
You are a software architect. You can read and search the codebase
|
|
8
|
-
|
|
7
|
+
You are a software architect. You can read and search the codebase — including
|
|
8
|
+
read-only shell commands (git log, ls, wc) — but you must never modify it: no
|
|
9
|
+
edits, no writes, no state-changing commands. You produce a plan, not an
|
|
10
|
+
implementation.
|
|
9
11
|
|
|
10
12
|
Ground the plan in what the code actually does:
|
|
11
13
|
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
# One Code user guide
|
|
2
|
+
|
|
3
|
+
How to use One Code day to day: installing it, connecting model providers,
|
|
4
|
+
reusing your Claude Code configuration, and driving every feature. For what
|
|
5
|
+
One Code is and why it exists, see the [project README](../../README.md).
|
|
6
|
+
|
|
7
|
+
## Start here
|
|
8
|
+
|
|
9
|
+
If you have never run One Code, read these in order:
|
|
10
|
+
|
|
11
|
+
1. [Install One Code](installation.md). Install it and open your first
|
|
12
|
+
session.
|
|
13
|
+
2. [Providers and models](providers-and-models.md). Connect a provider, add
|
|
14
|
+
an API key, and switch models.
|
|
15
|
+
3. [Bring your Claude Code setup](bring-your-claude-code-setup.md). Reuse
|
|
16
|
+
your `CLAUDE.md`, skills, agents, commands, plugins, hooks, and
|
|
17
|
+
permission rules unchanged.
|
|
18
|
+
4. [The terminal interface](terminal-interface.md). What is on screen and
|
|
19
|
+
how to move around it.
|
|
20
|
+
|
|
21
|
+
## All guides
|
|
22
|
+
|
|
23
|
+
| Guide | What it covers |
|
|
24
|
+
|---|---|
|
|
25
|
+
| [Install One Code](installation.md) | The npm app, the pi extension, Homebrew, source installs, updating, and uninstalling. |
|
|
26
|
+
| [Providers and models](providers-and-models.md) | Connecting providers, storing keys, switching models, automatic model selection for side roles, prompt tiers, and web search. |
|
|
27
|
+
| [Bring your Claude Code setup](bring-your-claude-code-setup.md) | Which Claude Code files are read, which settings keys are honored, and what stays separate. |
|
|
28
|
+
| [The terminal interface](terminal-interface.md) | The banner, status line, working indicator, panels, dialogs, and themes. |
|
|
29
|
+
| [Configure One Code](configuration.md) | Settings-file locations, the `~/.onecode` layout, every One Code settings key, full-screen mode, and language servers. |
|
|
30
|
+
| [Permissions, modes, and auto mode](permissions-modes-and-auto-mode.md) | How decisions are made, rules, modes, the approval prompt, protected paths, project trust, plan mode, auto mode, and the security model. |
|
|
31
|
+
| [Hooks](hooks.md) | Supported events, the input and output contract, approval, and debugging. |
|
|
32
|
+
| [Subagents and workflows](subagents-and-workflows.md) | Delegating to subagents, forks, worktrees, the live panel, `ultracode` workflows, and reasoning effort. |
|
|
33
|
+
| [Skills, plugins, and MCP](skills-plugins-and-mcp.md) | Skills and their states, custom commands, plugins and marketplaces, and MCP servers. |
|
|
34
|
+
| [Tools](tools.md) | Every tool the model can call, what you see when it runs, and Claude Code's names for them. |
|
|
35
|
+
| [Sessions and context](sessions-and-context.md) | What the model sees, memory, compaction, the cache, recaps, and resuming sessions. |
|
|
36
|
+
| [Tasks and background work](tasks-and-background-work.md) | The task list, background shells, monitors, loops, and how results reach the model. |
|
|
37
|
+
| [Check your setup with doctor](doctor.md) | The report, the checkup, model presets, and the `onecode doctor` command. |
|
|
38
|
+
| [Differences from Claude Code](differences-from-claude-code.md) | What is different by design, what is not provided, and known issues. |
|
|
39
|
+
| [Troubleshooting](troubleshooting.md) | Symptoms, causes, and fixes. |
|
|
40
|
+
| [Command and keyboard reference](reference.md) | Every command, shortcut, flag, environment variable, and file location. |
|
|
41
|
+
|
|
42
|
+
## Find a setting
|
|
43
|
+
|
|
44
|
+
- [Settings files and the `~/.onecode` layout](configuration.md#where-settings-live)
|
|
45
|
+
- [Every One Code settings key](configuration.md#settings-reference)
|
|
46
|
+
- [Provider API keys](providers-and-models.md#store-keys-as-environment-variables)
|
|
47
|
+
- [Web-search providers and fallback order](providers-and-models.md#web-search-on-providers-without-a-search-api)
|
|
48
|
+
- [Subagent and classifier models](subagents-and-workflows.md#choose-the-subagent-model)
|
|
49
|
+
- [Default permission mode](permissions-modes-and-auto-mode.md#choose-the-starting-mode)
|
|
50
|
+
- [Auto-mode configuration keys](permissions-modes-and-auto-mode.md#configure-auto-mode)
|
|
51
|
+
- [Language-server setup](configuration.md#language-server-diagnostics)
|
|
52
|
+
- [Environment variables](reference.md#environment-variables)
|