iosm-cli 0.2.7 → 0.2.8
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 +28 -1
- package/README.md +2 -2
- package/dist/cli/args.d.ts.map +1 -1
- package/dist/cli/args.js +7 -3
- package/dist/cli/args.js.map +1 -1
- package/dist/core/agent-profiles.d.ts.map +1 -1
- package/dist/core/agent-profiles.js +10 -1
- package/dist/core/agent-profiles.js.map +1 -1
- package/dist/core/agent-session.d.ts.map +1 -1
- package/dist/core/agent-session.js +26 -0
- package/dist/core/agent-session.js.map +1 -1
- package/dist/core/sdk.d.ts +2 -2
- package/dist/core/sdk.d.ts.map +1 -1
- package/dist/core/sdk.js +3 -3
- package/dist/core/sdk.js.map +1 -1
- package/dist/core/settings-manager.d.ts +39 -0
- package/dist/core/settings-manager.d.ts.map +1 -1
- package/dist/core/settings-manager.js +168 -0
- package/dist/core/settings-manager.js.map +1 -1
- package/dist/core/shadow-guard.js +1 -1
- package/dist/core/shadow-guard.js.map +1 -1
- package/dist/core/system-prompt.d.ts.map +1 -1
- package/dist/core/system-prompt.js +78 -4
- package/dist/core/system-prompt.js.map +1 -1
- package/dist/core/tools/git-common.d.ts +45 -0
- package/dist/core/tools/git-common.d.ts.map +1 -0
- package/dist/core/tools/git-common.js +185 -0
- package/dist/core/tools/git-common.js.map +1 -0
- package/dist/core/tools/git-read.d.ts +15 -13
- package/dist/core/tools/git-read.d.ts.map +1 -1
- package/dist/core/tools/git-read.js +101 -153
- package/dist/core/tools/git-read.js.map +1 -1
- package/dist/core/tools/git-write.d.ts +75 -0
- package/dist/core/tools/git-write.d.ts.map +1 -0
- package/dist/core/tools/git-write.js +298 -0
- package/dist/core/tools/git-write.js.map +1 -0
- package/dist/core/tools/index.d.ts +47 -1
- package/dist/core/tools/index.d.ts.map +1 -1
- package/dist/core/tools/index.js +10 -0
- package/dist/core/tools/index.js.map +1 -1
- package/dist/core/tools/task.js +1 -1
- package/dist/core/tools/task.js.map +1 -1
- package/dist/core/tools/web-search.d.ts +72 -0
- package/dist/core/tools/web-search.d.ts.map +1 -0
- package/dist/core/tools/web-search.js +702 -0
- package/dist/core/tools/web-search.js.map +1 -0
- package/dist/index.d.ts +2 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/modes/interactive/components/config-selector.d.ts.map +1 -1
- package/dist/modes/interactive/components/config-selector.js +7 -2
- package/dist/modes/interactive/components/config-selector.js.map +1 -1
- package/dist/modes/interactive/components/mcp-selector.d.ts.map +1 -1
- package/dist/modes/interactive/components/mcp-selector.js +3 -1
- package/dist/modes/interactive/components/mcp-selector.js.map +1 -1
- package/dist/modes/interactive/components/model-selector.d.ts.map +1 -1
- package/dist/modes/interactive/components/model-selector.js +12 -2
- package/dist/modes/interactive/components/model-selector.js.map +1 -1
- package/dist/modes/interactive/components/oauth-selector.d.ts.map +1 -1
- package/dist/modes/interactive/components/oauth-selector.js +11 -0
- package/dist/modes/interactive/components/oauth-selector.js.map +1 -1
- package/dist/modes/interactive/components/scoped-models-selector.d.ts.map +1 -1
- package/dist/modes/interactive/components/scoped-models-selector.js +16 -5
- package/dist/modes/interactive/components/scoped-models-selector.js.map +1 -1
- package/dist/modes/interactive/components/session-selector.d.ts.map +1 -1
- package/dist/modes/interactive/components/session-selector.js +4 -2
- package/dist/modes/interactive/components/session-selector.js.map +1 -1
- package/dist/modes/interactive/components/settings-selector.d.ts +25 -0
- package/dist/modes/interactive/components/settings-selector.d.ts.map +1 -1
- package/dist/modes/interactive/components/settings-selector.js +182 -2
- package/dist/modes/interactive/components/settings-selector.js.map +1 -1
- package/dist/modes/interactive/components/show-images-selector.d.ts.map +1 -1
- package/dist/modes/interactive/components/show-images-selector.js +7 -2
- package/dist/modes/interactive/components/show-images-selector.js.map +1 -1
- package/dist/modes/interactive/components/theme-selector.d.ts.map +1 -1
- package/dist/modes/interactive/components/theme-selector.js +7 -2
- package/dist/modes/interactive/components/theme-selector.js.map +1 -1
- package/dist/modes/interactive/components/thinking-selector.d.ts.map +1 -1
- package/dist/modes/interactive/components/thinking-selector.js +7 -2
- package/dist/modes/interactive/components/thinking-selector.js.map +1 -1
- package/dist/modes/interactive/components/tree-selector.d.ts.map +1 -1
- package/dist/modes/interactive/components/tree-selector.js +18 -3
- package/dist/modes/interactive/components/tree-selector.js.map +1 -1
- package/dist/modes/interactive/components/user-message-selector.d.ts.map +1 -1
- package/dist/modes/interactive/components/user-message-selector.js +8 -0
- package/dist/modes/interactive/components/user-message-selector.js.map +1 -1
- package/dist/modes/interactive/interactive-mode.d.ts +4 -0
- package/dist/modes/interactive/interactive-mode.d.ts.map +1 -1
- package/dist/modes/interactive/interactive-mode.js +128 -2
- package/dist/modes/interactive/interactive-mode.js.map +1 -1
- package/docs/cli-reference.md +17 -2
- package/docs/configuration.md +11 -2
- package/docs/development-and-testing.md +1 -1
- package/docs/interactive-mode.md +2 -2
- package/docs/rpc-json-sdk.md +1 -1
- package/package.json +1 -1
package/docs/cli-reference.md
CHANGED
|
@@ -257,7 +257,7 @@ iosm --api-key sk-test-123 # Override for this run
|
|
|
257
257
|
|
|
258
258
|
### Available Tools
|
|
259
259
|
|
|
260
|
-
`read`, `bash`, `edit`, `write`, `grep`, `find`, `ls`, `rg`, `fd`, `ast_grep`, `comby`, `jq`, `yq`, `semgrep`, `sed`, `semantic_search`, `fetch`, `git_read`, `fs_ops`
|
|
260
|
+
`read`, `bash`, `edit`, `write`, `grep`, `find`, `ls`, `rg`, `fd`, `ast_grep`, `comby`, `jq`, `yq`, `semgrep`, `sed`, `semantic_search`, `fetch`, `web_search`, `git_read`, `git_write`, `fs_ops`, `todo_read`, `todo_write`
|
|
261
261
|
|
|
262
262
|
Tool notes:
|
|
263
263
|
- `rg`, `fd` are managed by iosm-cli and auto-resolved when missing.
|
|
@@ -265,8 +265,23 @@ Tool notes:
|
|
|
265
265
|
- `sed` tool is preview/extraction-oriented; in-place edits are intentionally blocked.
|
|
266
266
|
- `semantic_search` uses configured embeddings provider/index (`/semantic setup`).
|
|
267
267
|
- `fetch` is profile-aware: read-only profiles allow only `GET/HEAD/OPTIONS`; write-capable profiles allow full HTTP method set.
|
|
268
|
-
- `
|
|
268
|
+
- `fetch` can be used for remote GitHub inspection without cloning via GitHub API/RAW endpoints (for example `api.github.com`, `raw.githubusercontent.com`).
|
|
269
|
+
- `web_search` is discovery-oriented (Tavily primary, fallback chain configurable via settings/environment). Use `fetch` to read specific URLs.
|
|
270
|
+
- `git_read` provides structured read-only git actions (`status`, `diff`, `log`, `blame`, `show`, `branch_list`, `remote_list`, `rev_parse`) without raw shell passthrough.
|
|
271
|
+
- `git_write` provides structured git write actions (`add`, `restore`, `reset_index`, `commit`, `switch`, `branch_create`, `fetch`, `pull`, `push`, `stash_*`) with action-specific validation and no raw passthrough. Network actions require enabling GitHub tools network access in settings.
|
|
269
272
|
- `fs_ops` performs structured filesystem mutations (`mkdir`, `move`, `copy`, `delete`) with explicit `recursive`/`force` safety flags.
|
|
273
|
+
- `todo_read` / `todo_write` provide persistent task-state tracking for multi-step work in the current workspace.
|
|
274
|
+
|
|
275
|
+
Best-practice patterns:
|
|
276
|
+
- Git analysis: `git_read status` -> targeted `git_read diff/log/blame/show` on the exact files/refs you need.
|
|
277
|
+
- Git mutation: perform minimal-scope `git_write` actions first (explicit files/branch/message), then re-check with `git_read status/diff`.
|
|
278
|
+
- Web research: use `web_search` for discovery (prefer `include_domains`, `exclude_domains`, `days`, `topic` for tighter scope), then validate claims with `fetch` on primary URLs.
|
|
279
|
+
- For API endpoints via `fetch`, prefer `response_format=json`; for HTML/text pages use `response_format=text` (or `auto`) and tune `max_bytes`/`timeout` to keep output usable.
|
|
280
|
+
- File exploration: use bounded reads/searches (`path`, `glob`, `context`, `limit`); for large files, page with `read` using `offset`/`limit` instead of dumping whole files.
|
|
281
|
+
- File mutation: prefer `edit` for surgical changes and `write` for full rewrites; use `fs_ops` for `mkdir/move/copy/delete`, with `force=true` only when replacement/no-op behavior is intentional.
|
|
282
|
+
- Structured data transforms: use `jq`/`yq` to compute/preview transforms, then persist the final state through `edit`/`write`.
|
|
283
|
+
- Semantic retrieval: use `semantic_search status` first when relevance looks stale, then run `query`; run `index`/`rebuild` when config or index freshness requires it.
|
|
284
|
+
- Multi-step execution: keep task progress synchronized with `todo_write` and recover state with `todo_read` before resuming long threads.
|
|
270
285
|
|
|
271
286
|
**Examples:**
|
|
272
287
|
|
package/docs/configuration.md
CHANGED
|
@@ -78,12 +78,19 @@ Settings are merged in this order (later wins):
|
|
|
78
78
|
"shell": "/bin/zsh",
|
|
79
79
|
"cols": 120
|
|
80
80
|
},
|
|
81
|
+
"githubTools": {
|
|
82
|
+
"networkEnabled": false,
|
|
83
|
+
"token": "optional-gh-token"
|
|
84
|
+
},
|
|
81
85
|
"permissions": {
|
|
82
86
|
"autoApprove": false
|
|
83
87
|
}
|
|
84
88
|
}
|
|
85
89
|
```
|
|
86
90
|
|
|
91
|
+
`githubTools.networkEnabled` controls whether `git_write` network actions (`fetch`, `pull`, `push`) are allowed.
|
|
92
|
+
`githubTools.token` is optional and, when set, is injected for GitHub HTTPS authentication during network git actions.
|
|
93
|
+
|
|
87
94
|
## MCP Configuration
|
|
88
95
|
|
|
89
96
|
Manage MCP servers from CLI and interactive mode:
|
|
@@ -218,6 +225,8 @@ The table below lists common environment variables, but is not exhaustive.
|
|
|
218
225
|
| `IOSM_SHARE_VIEWER_URL` | Default | Custom base URL for `/share` links |
|
|
219
226
|
| `IOSM_AI_ANTIGRAVITY_VERSION` | Auto | Override Antigravity user-agent version |
|
|
220
227
|
| `IOSM_SKIP_VERSION_CHECK` | `false` | Disable update/version checks |
|
|
228
|
+
| `TAVILY_API_KEY` | unset | Enables Tavily primary provider for `web_search` |
|
|
229
|
+
| `IOSM_WEB_SEARCH_SEARXNG_URL` | unset | Optional SearXNG fallback base URL for `web_search` (legacy alias: `PI_WEB_SEARCH_SEARXNG_URL`) |
|
|
221
230
|
|
|
222
231
|
### Example: Shell Configuration
|
|
223
232
|
|
|
@@ -245,8 +254,8 @@ Profiles control the agent's behavior, available tools, and system prompt.
|
|
|
245
254
|
|
|
246
255
|
| Profile | Tools | Behavior |
|
|
247
256
|
|---------|-------|----------|
|
|
248
|
-
| `full` | All built-ins (read, bash, edit, write, fs_ops, grep, find, ls, rg, fd, ast_grep, comby, jq, yq, semgrep, sed, semantic_search, fetch, git_read) | Default full development capabilities |
|
|
249
|
-
| `plan` | Read-only bundle (read, grep, find, ls, rg, fd, ast_grep, comby, jq, yq, semgrep, sed, semantic_search, fetch, git_read) | Architecture planning and code review |
|
|
257
|
+
| `full` | All built-ins (read, bash, edit, write, git_write, fs_ops, grep, find, ls, rg, fd, ast_grep, comby, jq, yq, semgrep, sed, semantic_search, fetch, web_search, git_read) | Default full development capabilities |
|
|
258
|
+
| `plan` | Read-only bundle (read, grep, find, ls, rg, fd, ast_grep, comby, jq, yq, semgrep, sed, semantic_search, fetch, web_search, git_read) | Architecture planning and code review |
|
|
250
259
|
| `iosm` | All + IOSM context | IOSM cycle execution with artifact synchronization |
|
|
251
260
|
| `meta` | Full tools + orchestration-first contract | Adaptive multi-agent/delegate execution with verification closure |
|
|
252
261
|
|
|
@@ -157,7 +157,7 @@ Tests are organized by feature area:
|
|
|
157
157
|
|
|
158
158
|
| Area | Test Files | Coverage |
|
|
159
159
|
|------|-----------|----------|
|
|
160
|
-
| **Tools** | `tools.test.ts` | Built-in tools (`read`, `bash`, `edit`, `write`, `grep`, `find`, `ls`, `rg`, `fd`, `ast_grep`, `comby`, `jq`, `yq`, `semgrep`, `sed`) |
|
|
160
|
+
| **Tools** | `tools.test.ts` | Built-in tools (`read`, `bash`, `edit`, `write`, `git_write`, `fs_ops`, `grep`, `find`, `ls`, `rg`, `fd`, `ast_grep`, `comby`, `jq`, `yq`, `semgrep`, `sed`, `semantic_search`, `fetch`, `web_search`, `git_read`) |
|
|
161
161
|
| **Session** | `session-manager/`, `session-*.test.ts` | Persistence, branching, migration |
|
|
162
162
|
| **Extensions** | `extensions-*.test.ts` | Discovery, running, hooks, input events |
|
|
163
163
|
| **Compaction** | `compaction*.test.ts` | Context summarization |
|
package/docs/interactive-mode.md
CHANGED
|
@@ -336,8 +336,8 @@ Profiles change the agent's behavior, available tools, and system prompt:
|
|
|
336
336
|
|
|
337
337
|
| Profile | Tools | Use Case |
|
|
338
338
|
|---------|-------|----------|
|
|
339
|
-
| `full` | All built-ins (read, bash, edit, write, fs_ops, grep, find, ls, rg, fd, ast_grep, comby, jq, yq, semgrep, sed, semantic_search, fetch, git_read) | Default development work |
|
|
340
|
-
| `plan` | Read-only bundle (read, grep, find, ls, rg, fd, ast_grep, comby, jq, yq, semgrep, sed, semantic_search, fetch, git_read) | Architecture planning, code review |
|
|
339
|
+
| `full` | All built-ins (read, bash, edit, write, git_write, fs_ops, grep, find, ls, rg, fd, ast_grep, comby, jq, yq, semgrep, sed, semantic_search, fetch, web_search, git_read) | Default development work |
|
|
340
|
+
| `plan` | Read-only bundle (read, grep, find, ls, rg, fd, ast_grep, comby, jq, yq, semgrep, sed, semantic_search, fetch, web_search, git_read) | Architecture planning, code review |
|
|
341
341
|
| `iosm` | All + IOSM context | IOSM cycle execution with artifact sync |
|
|
342
342
|
| `meta` | Full toolset + orchestration-first contract | Adaptive multi-agent/delegate execution with verification closure |
|
|
343
343
|
|
package/docs/rpc-json-sdk.md
CHANGED
|
@@ -233,7 +233,7 @@ const { session } = await createAgentSession({
|
|
|
233
233
|
import { readOnlyTools } from "iosm-cli";
|
|
234
234
|
|
|
235
235
|
const { session } = await createAgentSession({
|
|
236
|
-
tools: readOnlyTools, // Read-only bundle (code search + semantic + HTTP/git introspection)
|
|
236
|
+
tools: readOnlyTools, // Read-only bundle (code search + semantic + web discovery + HTTP/git introspection)
|
|
237
237
|
authStorage,
|
|
238
238
|
modelRegistry,
|
|
239
239
|
});
|