icopilot 2.2.0 → 2.3.2
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/README.md +324 -166
- package/bin/icopilot.js +0 -0
- package/dist/commands/suggest-cmd.js +148 -8
- package/dist/index.js +25 -2
- package/dist/modes/interactive.js +4 -1
- package/dist/modes/tui.js +22 -6
- package/dist/tools/shell.js +133 -25
- package/dist/ui/box.js +79 -0
- package/dist/ui/prompt.js +174 -12
- package/dist/ui/render.js +32 -3
- package/dist/ui/theme.js +71 -13
- package/package.json +77 -77
package/README.md
CHANGED
|
@@ -1,214 +1,372 @@
|
|
|
1
|
-
|
|
1
|
+
<h1 align="center">
|
|
2
|
+
<img src="https://raw.githubusercontent.com/i4Edu/icli/main/docs/screenshots/repl.svg" alt="" width="1" height="1">
|
|
3
|
+
iCopilot · icli
|
|
4
|
+
</h1>
|
|
2
5
|
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
+
<p align="center">
|
|
7
|
+
<strong>Terminal-native agentic AI assistant — powered by GitHub Models</strong><br>
|
|
8
|
+
<em>Interactive REPL · Plan Mode · Autopilot · Multi-Agent · IDE Bridge · API Server</em>
|
|
9
|
+
</p>
|
|
6
10
|
|
|
7
|
-
|
|
11
|
+
<p align="center">
|
|
12
|
+
<a href="https://www.npmjs.com/package/icopilot"><img src="https://img.shields.io/npm/v/icopilot?color=0078d4&label=npm&style=flat-square" alt="npm"></a>
|
|
13
|
+
<a href="https://www.npmjs.com/package/icopilot"><img src="https://img.shields.io/npm/dm/icopilot?color=28a745&style=flat-square" alt="downloads"></a>
|
|
14
|
+
<img src="https://img.shields.io/badge/node-%3E%3D18.17-brightgreen?style=flat-square" alt="node">
|
|
15
|
+
<img src="https://img.shields.io/badge/license-MIT-blue?style=flat-square" alt="license">
|
|
16
|
+
</p>
|
|
17
|
+
|
|
18
|
+
---
|
|
19
|
+
|
|
20
|
+
## Screenshots
|
|
8
21
|
|
|
9
22
|
<p align="center">
|
|
10
|
-
<img src="./docs/screenshots/repl.svg" alt="iCopilot REPL
|
|
23
|
+
<img src="./docs/screenshots/repl.svg" alt="iCopilot interactive REPL" width="820">
|
|
24
|
+
<br><em>Interactive REPL with live streaming responses and tool confirmations</em>
|
|
11
25
|
</p>
|
|
12
26
|
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
- 🎯 **Agent routing** — automatic delegation by query type
|
|
30
|
-
- 🔄 **Tool retry logic** — automatic retry on transient failures
|
|
31
|
-
|
|
32
|
-
### Copilot Spaces & Teams (v1.5)
|
|
33
|
-
- 📦 **Project spaces** — isolated context sandboxes per project/branch
|
|
34
|
-
- 🤝 **Session handoff** — export state for another developer
|
|
35
|
-
- 🧠 **Team memory** — shared `.icopilot/team-memory.md`
|
|
36
|
-
- 📂 **Smart file selection** — model-driven relevant file picking
|
|
37
|
-
- 🌿 **Git-aware context** — auto-include recently modified files
|
|
38
|
-
|
|
39
|
-
### IDE-Grade Intelligence (v1.6)
|
|
40
|
-
- 🔍 **Symbol index** — project-wide function/class/type table
|
|
41
|
-
- 🧭 **Cross-file navigation** — go-to-definition, find-references
|
|
42
|
-
- ✏️ **Multi-file atomic edits** — N-file changes reviewed holistically
|
|
43
|
-
- 🧪 **Code generation with tests** — auto-generate test file for new modules
|
|
44
|
-
- 👁️ **Live error watching** — monitor build output, auto-suggest fixes
|
|
45
|
-
- 🕵️ **Stack trace analysis** — AI-powered root cause diagnosis
|
|
46
|
-
|
|
47
|
-
### Workflow Automation (v1.7)
|
|
48
|
-
- ⚙️ **Workflow engine** — `.icopilot/workflows/*.yaml` with conditionals and loops
|
|
49
|
-
- 🚀 **GitHub Actions helper** — generate CI YAML from natural language
|
|
50
|
-
- 🪝 **Pre-commit hook** — `/review` + `/security` before commit
|
|
51
|
-
- 📁 **File watch triggers** — run workflow on file change
|
|
52
|
-
- 📦 **Release automation** — version bump → changelog → tag → publish
|
|
53
|
-
|
|
54
|
-
### Knowledge & Learning (v1.8)
|
|
55
|
-
- 📚 **Project RAG** — chunk and index all docs for retrieval
|
|
56
|
-
- 📝 **Doc generation** — JSDoc/docstring from code
|
|
57
|
-
- 📖 **README generation** — scaffold from project analysis
|
|
58
|
-
- 🏗️ **Architecture diagrams** — mermaid from code relationships
|
|
59
|
-
- 🎨 **Style learning** — adapt to user's coding patterns
|
|
60
|
-
- 💡 **Correction memory** — remember and apply user corrections
|
|
61
|
-
- 📏 **Project conventions** — learn and enforce patterns
|
|
62
|
-
|
|
63
|
-
### Enterprise & Security (v1.9)
|
|
64
|
-
- 🔐 **Role-based access** — restrict tools by user role
|
|
65
|
-
- 📋 **Audit logging** — full trail of all tool executions
|
|
66
|
-
- 🌐 **Proxy support** — HTTP/HTTPS/SOCKS5
|
|
67
|
-
- 🏠 **Air-gapped mode** — local models (Ollama, vLLM)
|
|
68
|
-
- 🛡️ **Content filtering** — prevent PII in prompts
|
|
69
|
-
- 🗑️ **Retention policies** — auto-delete after N days
|
|
70
|
-
|
|
71
|
-
### The Complete Agentic OS (v2.0)
|
|
72
|
-
- 🎯 **Goal-driven development** — describe feature → implement end-to-end
|
|
73
|
-
- 🔧 **Self-healing builds** — detect failure → diagnose → fix → retry
|
|
74
|
-
- 🧪 **TDD agent** — write tests first, implement until green
|
|
75
|
-
- 🌐 **Multi-repo orchestration** — coordinate across repositories
|
|
76
|
-
- 🏪 **Plugin marketplace** — `icopilot install <plugin>`
|
|
77
|
-
- 🔌 **Custom model providers** — any OpenAI-compatible endpoint
|
|
78
|
-
- 🖥️ **IDE bridge** — bidirectional VS Code / Neovim communication
|
|
79
|
-
- 🌍 **API server mode** — expose as HTTP API (`--serve`)
|
|
80
|
-
- 🐳 **Container sandbox** — Docker-based isolated execution
|
|
81
|
-
- ☁️ **Cloud sessions** — run in cloud, access from any terminal
|
|
82
|
-
|
|
83
|
-
### Slash Commands
|
|
84
|
-
|
|
85
|
-
```
|
|
86
|
-
/help /clear /model /cwd /diff /context /compact /sessions /export
|
|
87
|
-
/commit /pr /review /issue /branch /plan /lint /test /security
|
|
88
|
-
/agent /space /workflow /actions /release /doc /readme /diagram
|
|
89
|
-
/rag /conventions /corrections /audit /proxy /provider /goal /heal
|
|
90
|
-
/tdd /repo /serve /exit
|
|
91
|
-
```
|
|
27
|
+
<p align="center">
|
|
28
|
+
<img src="./docs/screenshots/help.svg" alt="icopilot --help" width="820">
|
|
29
|
+
<br><em>Full CLI reference — <code>icopilot --help</code> or <code>icli --help</code></em>
|
|
30
|
+
</p>
|
|
31
|
+
|
|
32
|
+
<p align="center">
|
|
33
|
+
<img src="./docs/screenshots/oneshot.svg" alt="One-shot mode" width="820">
|
|
34
|
+
<br><em>One-shot mode: pipe-friendly, scriptable AI answers</em>
|
|
35
|
+
</p>
|
|
36
|
+
|
|
37
|
+
<p align="center">
|
|
38
|
+
<img src="./docs/screenshots/missing-token.svg" alt="Friendly auth error" width="820">
|
|
39
|
+
<br><em>Actionable error messages — never silent failures</em>
|
|
40
|
+
</p>
|
|
41
|
+
|
|
42
|
+
---
|
|
92
43
|
|
|
93
44
|
## Install
|
|
94
45
|
|
|
95
46
|
```bash
|
|
96
|
-
npm install
|
|
97
|
-
npm run build
|
|
98
|
-
npm link # exposes `icopilot` / `icli` globally
|
|
47
|
+
npm install -g icopilot
|
|
99
48
|
```
|
|
100
49
|
|
|
101
|
-
|
|
50
|
+
Both `icopilot` and `icli` are installed as identical aliases:
|
|
51
|
+
|
|
52
|
+
```
|
|
53
|
+
$ icopilot --version
|
|
54
|
+
2.2.1
|
|
55
|
+
|
|
56
|
+
$ icli --version
|
|
57
|
+
2.2.1
|
|
58
|
+
```
|
|
102
59
|
|
|
103
|
-
|
|
60
|
+
**Requirements:** Node.js ≥ 18.17
|
|
61
|
+
|
|
62
|
+
---
|
|
63
|
+
|
|
64
|
+
## Authentication
|
|
65
|
+
|
|
66
|
+
Create a GitHub Personal Access Token with **`models:read`** scope at
|
|
67
|
+
→ [github.com/settings/tokens](https://github.com/settings/tokens)
|
|
104
68
|
|
|
105
69
|
```bash
|
|
106
70
|
# bash / zsh
|
|
107
|
-
export GITHUB_TOKEN=
|
|
71
|
+
export GITHUB_TOKEN=ghp_xxxxxxxxxxxx
|
|
108
72
|
|
|
109
73
|
# PowerShell
|
|
110
|
-
$env:GITHUB_TOKEN = "
|
|
74
|
+
$env:GITHUB_TOKEN = "ghp_xxxxxxxxxxxx"
|
|
75
|
+
|
|
76
|
+
# Persist in ~/.icopilotrc.json
|
|
77
|
+
echo '{ "token": "ghp_xxxxxxxxxxxx" }' > ~/.icopilotrc.json
|
|
111
78
|
```
|
|
112
79
|
|
|
113
|
-
|
|
80
|
+
---
|
|
81
|
+
|
|
82
|
+
## Quick Start
|
|
114
83
|
|
|
115
84
|
```bash
|
|
116
|
-
|
|
117
|
-
|
|
85
|
+
# Start interactive REPL
|
|
86
|
+
icopilot
|
|
87
|
+
|
|
88
|
+
# One-shot — answer a question and exit
|
|
89
|
+
icopilot -p "What does @src/index.ts export?"
|
|
90
|
+
|
|
91
|
+
# Plan mode — AI explains steps before making changes
|
|
92
|
+
icopilot --plan
|
|
93
|
+
|
|
94
|
+
# Autopilot — no confirmations, fully autonomous
|
|
95
|
+
icopilot --autopilot -p "Add error handling to all API calls"
|
|
96
|
+
|
|
97
|
+
# Use a specific model
|
|
98
|
+
icopilot --model gpt-4o
|
|
99
|
+
|
|
100
|
+
# Use local Ollama
|
|
101
|
+
icopilot --local
|
|
102
|
+
|
|
103
|
+
# Start HTTP API server
|
|
104
|
+
icopilot --serve 3000
|
|
105
|
+
|
|
106
|
+
# icli works exactly the same
|
|
107
|
+
icli --plan
|
|
108
|
+
icli -p "Explain this codebase"
|
|
118
109
|
```
|
|
119
110
|
|
|
120
|
-
|
|
111
|
+
---
|
|
121
112
|
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
icopilot
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
113
|
+
## CLI Reference
|
|
114
|
+
|
|
115
|
+
```
|
|
116
|
+
Usage: icopilot [options] [command]
|
|
117
|
+
|
|
118
|
+
Options:
|
|
119
|
+
-p, --prompt <text> one-shot mode: run a single prompt and exit
|
|
120
|
+
-m, --model <name> model id (default: gpt-4o-mini)
|
|
121
|
+
--local use local Ollama provider
|
|
122
|
+
--provider <name> github | ollama | vllm | lmstudio | openai | anthropic
|
|
123
|
+
--base-url <url> override provider base URL
|
|
124
|
+
--plan start in Plan Mode
|
|
125
|
+
--autopilot run in autopilot mode (no confirmations)
|
|
126
|
+
--architect planner + coder dual-agent mode
|
|
127
|
+
--tui full-screen TUI interface
|
|
128
|
+
--cwd <path> set working directory
|
|
129
|
+
-v, --verbose enable verbose debug logging
|
|
130
|
+
--sandbox restrict tools to current working directory
|
|
131
|
+
--log-level <level> debug | info | warn | error
|
|
132
|
+
--no-color disable colors
|
|
133
|
+
--theme <name> auto | light | dark | none
|
|
134
|
+
--policy <file> load a RBAC policy file
|
|
135
|
+
--json output responses as JSON
|
|
136
|
+
-q, --quiet suppress banners
|
|
137
|
+
-y, --yes auto-approve non-critical confirmations
|
|
138
|
+
--serve [port] start HTTP API server
|
|
139
|
+
--browser [port] start API server and open browser UI
|
|
140
|
+
--perf-trace print cold-start timing
|
|
141
|
+
|
|
142
|
+
Commands:
|
|
143
|
+
install <plugin> install a marketplace plugin
|
|
144
|
+
hook [subcommand] manage the git pre-commit hook
|
|
133
145
|
```
|
|
134
146
|
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
147
|
+
---
|
|
148
|
+
|
|
149
|
+
## Slash Commands (inside the REPL)
|
|
138
150
|
|
|
139
|
-
|
|
140
|
-
[`docs/sessions.md`](./docs/sessions.md) for session/memory usage, and
|
|
141
|
-
[`docs/mcp.md`](./docs/mcp.md) for MCP server integration.
|
|
151
|
+
Type `/` inside the REPL to trigger any command:
|
|
142
152
|
|
|
143
|
-
|
|
153
|
+
| Category | Commands |
|
|
154
|
+
|---|---|
|
|
155
|
+
| **Navigation** | `/help` `/clear` `/exit` `/quit` |
|
|
156
|
+
| **Models** | `/model <id>` `/provider <name>` `/reasoning` `/think-tokens` |
|
|
157
|
+
| **Context** | `/context` `/usage` `/compact` `/pin` `/unpin` `/read-only` `/cwd` |
|
|
158
|
+
| **Files** | `/diff` `/changes` `/edit-format` `/editor` |
|
|
159
|
+
| **Session** | `/sessions` `/export` `/share` `/handoff` `/copy` `/paste` `/copy-context` |
|
|
160
|
+
| **Git** | `/commit` `/pr` `/review` `/diff-review` `/issue` `/branch` `/git-log` |
|
|
161
|
+
| **Agents** | `/plan` `/autopilot` `/goal` `/heal` `/tdd` `/architect` |
|
|
162
|
+
| **Code Intel** | `/index` `/search` `/goto` `/refs` `/dead-code` `/error-watch` `/stack-trace` |
|
|
163
|
+
| **Automation** | `/workflow` `/actions` `/release` `/schedule` `/every` `/after` `/trigger` |
|
|
164
|
+
| **Knowledge** | `/rag` `/doc` `/diagram` `/readme` `/conventions` `/corrections` `/memory` `/style` |
|
|
165
|
+
| **Teams** | `/space` `/team-memory` `/repo` `/multi` |
|
|
166
|
+
| **System** | `/settings` `/profile` `/role` `/sandbox` `/serve` `/acp` `/cloud` `/cloud-routine` |
|
|
167
|
+
| **Misc** | `/tokens` `/cost` `/stats` `/metrics` `/snippets` `/feedback` `/voice` `/web` |
|
|
144
168
|
|
|
169
|
+
---
|
|
170
|
+
|
|
171
|
+
## Modes
|
|
172
|
+
|
|
173
|
+
### Interactive REPL
|
|
174
|
+
```bash
|
|
175
|
+
icopilot # or: icli
|
|
145
176
|
```
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
> /
|
|
151
|
-
> /tdd "Create a rate limiter"
|
|
177
|
+
The default mode. Streams markdown responses, shows tool proposals with `[Y/n]` confirmations,
|
|
178
|
+
tracks token usage, and persists sessions automatically.
|
|
179
|
+
|
|
180
|
+
```
|
|
181
|
+
> Refactor @src/api/github-models.ts to add retry logic
|
|
152
182
|
> /review
|
|
153
183
|
> /commit
|
|
154
|
-
> /pr
|
|
155
|
-
> /sessions
|
|
156
|
-
> /export md
|
|
157
|
-
> /exit
|
|
158
184
|
```
|
|
159
185
|
|
|
160
|
-
###
|
|
186
|
+
### Plan Mode
|
|
187
|
+
```bash
|
|
188
|
+
icopilot --plan # or: icli --plan
|
|
189
|
+
```
|
|
190
|
+
Before making any changes, the AI produces a numbered plan for your review. Approve each step
|
|
191
|
+
before it executes. Ideal for complex multi-file refactors.
|
|
161
192
|
|
|
162
|
-
|
|
163
|
-
|
|
193
|
+
### Autopilot
|
|
194
|
+
```bash
|
|
195
|
+
icopilot --autopilot -p "Add input validation to all form handlers"
|
|
196
|
+
```
|
|
197
|
+
Fully autonomous — the AI plans, implements, tests, and commits without prompts.
|
|
198
|
+
Use `--sandbox` to restrict filesystem access to `cwd`.
|
|
164
199
|
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
200
|
+
### Architect Mode
|
|
201
|
+
```bash
|
|
202
|
+
icopilot --architect
|
|
203
|
+
```
|
|
204
|
+
Dual-agent: a Planner agent produces a spec, then a Coder agent implements it step by step.
|
|
168
205
|
|
|
169
|
-
###
|
|
206
|
+
### One-shot (scriptable)
|
|
207
|
+
```bash
|
|
208
|
+
icopilot -p "What is the cyclomatic complexity of src/index.ts?"
|
|
209
|
+
icopilot -p "Explain @package.json" --json
|
|
210
|
+
git diff | icopilot -p "Summarize these changes"
|
|
211
|
+
```
|
|
170
212
|
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
213
|
+
### API Server
|
|
214
|
+
```bash
|
|
215
|
+
icopilot --serve 3000
|
|
216
|
+
# POST http://localhost:3000/v1/chat/completions
|
|
217
|
+
```
|
|
218
|
+
|
|
219
|
+
---
|
|
220
|
+
|
|
221
|
+
## @file References
|
|
222
|
+
|
|
223
|
+
Mention any file with `@` to inject its content into context:
|
|
224
|
+
|
|
225
|
+
```
|
|
226
|
+
> Review @src/auth/jwt.ts for security issues
|
|
227
|
+
> Compare @src/v1/api.ts and @src/v2/api.ts
|
|
228
|
+
> What changed in @package.json recently?
|
|
229
|
+
```
|
|
230
|
+
|
|
231
|
+
Supports glob patterns: `@src/**/*.ts`
|
|
174
232
|
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
233
|
+
---
|
|
234
|
+
|
|
235
|
+
## Configuration
|
|
236
|
+
|
|
237
|
+
**`~/.icopilotrc.json`** (user-level defaults):
|
|
238
|
+
```json
|
|
239
|
+
{
|
|
240
|
+
"token": "ghp_...",
|
|
241
|
+
"defaultModel": "gpt-4o-mini",
|
|
242
|
+
"endpoint": "https://models.inference.ai.azure.com",
|
|
243
|
+
"theme": "auto",
|
|
244
|
+
"verbose": false,
|
|
245
|
+
"sandbox": false
|
|
246
|
+
}
|
|
247
|
+
```
|
|
248
|
+
|
|
249
|
+
**Environment variables:**
|
|
250
|
+
|
|
251
|
+
| Variable | Description |
|
|
252
|
+
|---|---|
|
|
253
|
+
| `GITHUB_TOKEN` or `ICOPILOT_TOKEN` | API authentication token |
|
|
254
|
+
| `ICOPILOT_MODEL` | Default model ID |
|
|
255
|
+
| `ICOPILOT_ENDPOINT` | API endpoint override |
|
|
256
|
+
| `ICOPILOT_SESSION_DIR` | Custom session storage path |
|
|
257
|
+
| `ICOPILOT_THEME` | `auto` \| `light` \| `dark` \| `none` |
|
|
258
|
+
| `ICOPILOT_LOG_LEVEL` | `debug` \| `info` \| `warn` \| `error` |
|
|
259
|
+
| `ICOPILOT_SANDBOX` | `true` to restrict tools to cwd |
|
|
260
|
+
|
|
261
|
+
**Project memory** — `.icopilot/memory.md` (committed, shared)
|
|
262
|
+
**Global memory** — `~/.icopilot/memory.md` (personal, cross-project)
|
|
263
|
+
|
|
264
|
+
---
|
|
265
|
+
|
|
266
|
+
## Agentic Capabilities
|
|
267
|
+
|
|
268
|
+
### Goal-Driven Development
|
|
269
|
+
Describe a feature at a high level — the AI breaks it down, implements it, runs tests, and iterates:
|
|
270
|
+
```
|
|
271
|
+
> /goal "Add OAuth2 login with GitHub"
|
|
272
|
+
```
|
|
273
|
+
|
|
274
|
+
### Self-Healing Builds
|
|
275
|
+
```
|
|
276
|
+
> /heal
|
|
277
|
+
```
|
|
278
|
+
Detects build/test failures, diagnoses root cause, applies fixes, retries automatically.
|
|
279
|
+
|
|
280
|
+
### TDD Agent
|
|
281
|
+
```
|
|
282
|
+
> /tdd "Write a rate limiter with sliding window"
|
|
283
|
+
```
|
|
284
|
+
Writes tests first, implements code until all tests pass.
|
|
285
|
+
|
|
286
|
+
### Multi-File Atomic Edits
|
|
287
|
+
The AI can read, reason about, and edit N files in a single coherent operation — no context loss.
|
|
288
|
+
|
|
289
|
+
### Pre-commit Hook
|
|
290
|
+
```bash
|
|
291
|
+
icopilot hook install
|
|
292
|
+
```
|
|
293
|
+
Runs `/review` and `/security` scan before every `git commit`.
|
|
294
|
+
|
|
295
|
+
---
|
|
296
|
+
|
|
297
|
+
## Model Support
|
|
298
|
+
|
|
299
|
+
| Provider | Models |
|
|
300
|
+
|---|---|
|
|
301
|
+
| **GitHub Models** (default) | `gpt-4o`, `gpt-4o-mini`, `o1`, `o1-mini`, `o3-mini`, `claude-3.5-sonnet`, `Llama-3.3-70B`, and more |
|
|
302
|
+
| **Ollama** | any locally-served model |
|
|
303
|
+
| **vLLM / LM Studio** | any OpenAI-compatible endpoint |
|
|
304
|
+
| **OpenAI** | direct API |
|
|
305
|
+
| **Anthropic** | direct API |
|
|
306
|
+
| **Custom** | any provider in `.icopilot/providers/*.yaml` |
|
|
307
|
+
|
|
308
|
+
Switch models at runtime:
|
|
309
|
+
```
|
|
310
|
+
> /model gpt-4o
|
|
311
|
+
> /provider anthropic
|
|
312
|
+
```
|
|
313
|
+
|
|
314
|
+
---
|
|
315
|
+
|
|
316
|
+
## Plugin System
|
|
317
|
+
|
|
318
|
+
```bash
|
|
319
|
+
icopilot install <plugin-name> # install from marketplace
|
|
320
|
+
/plugins list # list installed plugins
|
|
321
|
+
/extension load ./my-plugin.js # load local extension
|
|
322
|
+
```
|
|
323
|
+
|
|
324
|
+
---
|
|
178
325
|
|
|
179
326
|
## Architecture
|
|
180
327
|
|
|
181
328
|
```
|
|
182
329
|
src/
|
|
183
|
-
├── index.ts
|
|
184
|
-
├── config.ts
|
|
185
|
-
├──
|
|
186
|
-
├──
|
|
187
|
-
├──
|
|
188
|
-
├──
|
|
189
|
-
├──
|
|
190
|
-
├──
|
|
191
|
-
├──
|
|
192
|
-
├──
|
|
193
|
-
├──
|
|
194
|
-
├──
|
|
195
|
-
├──
|
|
196
|
-
├──
|
|
197
|
-
├──
|
|
198
|
-
├──
|
|
199
|
-
├──
|
|
200
|
-
├──
|
|
201
|
-
├──
|
|
202
|
-
├──
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
330
|
+
├── index.ts ← CLI entry, flag parsing
|
|
331
|
+
├── config.ts ← env + rc-file + runtime config
|
|
332
|
+
├── api/github-models.ts ← OpenAI-SDK → GitHub Models
|
|
333
|
+
├── session/ ← history, persistence, handoff, cloud
|
|
334
|
+
├── context/ ← @file, /compact, memory, smart-files, git context
|
|
335
|
+
├── tools/ ← shell, file ops, patch, grep, glob, multi-edit
|
|
336
|
+
├── commands/ ← 60+ slash command handlers
|
|
337
|
+
├── agents/ ← parallel runner, router, goal, TDD, self-heal
|
|
338
|
+
├── intelligence/ ← symbol index, navigation, error watch, dead code
|
|
339
|
+
├── workflows/ ← YAML engine, file triggers, built-ins
|
|
340
|
+
├── knowledge/ ← RAG, style learner, corrections, conventions
|
|
341
|
+
├── security/ ← RBAC, audit, content filter, retention, proxy
|
|
342
|
+
├── providers/ ← custom providers, local models
|
|
343
|
+
├── plugins/ ← marketplace, loader
|
|
344
|
+
├── server/ ← HTTP API server
|
|
345
|
+
├── bridge/ ← VS Code / Neovim IDE bridge
|
|
346
|
+
├── sandbox/ ← container-based isolated execution
|
|
347
|
+
├── spaces/ ← project spaces
|
|
348
|
+
├── hooks/ ← pre-commit, git hooks
|
|
349
|
+
├── ui/ ← streaming markdown, theme, prompt
|
|
350
|
+
└── modes/ ← interactive / plan / oneshot / TUI
|
|
351
|
+
```
|
|
352
|
+
|
|
353
|
+
---
|
|
354
|
+
|
|
355
|
+
## Documentation
|
|
356
|
+
|
|
357
|
+
| Doc | Description |
|
|
358
|
+
|---|---|
|
|
359
|
+
| [`docs/config.md`](./docs/config.md) | Full config file reference |
|
|
360
|
+
| [`docs/sessions.md`](./docs/sessions.md) | Session management & memory |
|
|
361
|
+
| [`docs/mcp.md`](./docs/mcp.md) | MCP server integration |
|
|
362
|
+
| [`docs/api.md`](./docs/api.md) | HTTP API server reference |
|
|
363
|
+
| [`docs/teams-integration.md`](./docs/teams-integration.md) | Teams & spaces |
|
|
364
|
+
| [`docs/cloud-routines.md`](./docs/cloud-routines.md) | Scheduled cloud routines |
|
|
365
|
+
| [`CHANGELOG.md`](./CHANGELOG.md) | Release notes |
|
|
366
|
+
| [`roadmap.md`](./roadmap.md) | Version roadmap |
|
|
367
|
+
|
|
368
|
+
---
|
|
211
369
|
|
|
212
370
|
## License
|
|
213
371
|
|
|
214
|
-
MIT
|
|
372
|
+
MIT © [i4Edu](https://github.com/i4Edu)
|
package/bin/icopilot.js
CHANGED
|
File without changes
|