@lazyingart/agintiflow 0.20.116 → 0.20.118
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 +17 -5
- package/docs/large-codebase-engineering.md +18 -0
- package/docs/model-selection.md +2 -0
- package/docs/perception-and-web-research.md +48 -0
- package/docs/runtime-modes-and-autonomy.md +3 -1
- package/docs/skills-and-tools.md +16 -1
- package/docs/student-committee-supervisor.md +6 -0
- package/i18n/README.ar.md +1 -1
- package/i18n/README.de.md +1 -1
- package/i18n/README.es.md +1 -1
- package/i18n/README.fr.md +1 -1
- package/i18n/README.ja.md +1 -1
- package/i18n/README.ko.md +1 -1
- package/i18n/README.ru.md +1 -1
- package/i18n/README.vi.md +1 -1
- package/i18n/README.zh-Hans.md +1 -1
- package/i18n/README.zh-Hant.md +1 -1
- package/package.json +6 -2
- package/references/dynamic-step-budget-and-scs-auto.md +241 -0
- package/references/model-routing-provider-design.md +9 -0
- package/references/multimodal-research-wrapper-design.md +455 -0
- package/references/student-committee-supervisor-mode.md +6 -0
- package/scripts/smoke-cli-chat.js +105 -1
- package/scripts/smoke-coding-tools.js +70 -1
- package/scripts/smoke-dynamic-step-budget.js +152 -0
- package/scripts/smoke-perception-research.js +128 -0
- package/scripts/smoke-toolchain-docker.js +13 -1
- package/skills/book-writing/SKILL.md +3 -0
- package/skills/latex-manuscript/SKILL.md +3 -0
- package/skills/novel-writing/SKILL.md +3 -0
- package/skills/writing-editing/SKILL.md +3 -1
- package/src/agent-runner.js +355 -17
- package/src/capabilities.js +1 -0
- package/src/cli.js +212 -25
- package/src/command-policy.js +2 -2
- package/src/config.js +25 -0
- package/src/docker-sandbox.js +28 -1
- package/src/engineering-guidance.js +60 -0
- package/src/guardrails.js +91 -0
- package/src/interactive-cli.js +224 -26
- package/src/model-client.js +193 -5
- package/src/model-routing.js +11 -1
- package/src/parallel-scouts.js +1 -1
- package/src/perception-tools.js +627 -0
- package/src/scs-controller.js +56 -0
- package/src/step-budget-controller.js +285 -0
- package/src/task-profiles.js +11 -11
- package/src/web-search.js +2 -1
- package/src/writing-specialist.js +287 -0
package/README.md
CHANGED
|
@@ -53,6 +53,8 @@ Most agent tools are either a chat box with hidden state or an expensive one-mod
|
|
|
53
53
|
| Inspectable beats mysterious | Plans, tool calls, file diffs, command output, canvas artifacts, and session events are saved and resumable. |
|
|
54
54
|
| Disciplined by default | `AGINTI.md` starts with a behavior contract: surface ambiguity, keep edits surgical, avoid speculative complexity, verify outcomes, and respect permission blockers. |
|
|
55
55
|
| Role-based models | Route, main, spare, wrapper, and auxiliary image roles are separate. You can use cheap route models, stronger main models, optional OpenAI/Qwen/Venice routes, and GRS AI/Venice image tools. |
|
|
56
|
+
| Writing without agent noise | `writing_specialist` drafts novels, books, scripts, essays, and paper prose in an isolated writing-only context, then the main agent handles files, formatting, citations, checks, and artifacts. |
|
|
57
|
+
| Visual and web evidence | `read_image` reads screenshots/figures with typed perception artifacts, `web_research` saves sourced research artifacts, and `research_wrapper` can ask Codex `gpt-5.4-mini` medium for a strict-JSON second opinion. |
|
|
56
58
|
| Scouts before big work | Parallel scouts can cheaply map architecture, tests, risks, symbols, and integration points before the main executor edits anything. |
|
|
57
59
|
| SCS for high-risk work | Student-Committee-Supervisor mode adds a typed gate: committee drafts, student approves/monitors, supervisor executes. Use `/scs` or `--scs auto`. |
|
|
58
60
|
| AAPS for large workflows | AAPS describes top-down agentic pipeline scripts; AgInTiFlow can act as the interactive backend that validates, compiles, and executes those workflows. |
|
|
@@ -132,12 +134,16 @@ aginti --language de
|
|
|
132
134
|
| Review current repo | `/review [focus]` |
|
|
133
135
|
| Toggle SCS quality gate | `/scs` |
|
|
134
136
|
| Use SCS only for complex work | `/scs auto` or `aginti --scs auto "task"` |
|
|
137
|
+
| Control dynamic step budgets | `--dynamic-steps auto\|on\|off` |
|
|
135
138
|
| Work with AAPS workflows | `aginti aaps status`, `/aaps validate` |
|
|
136
139
|
| Choose models | `/route`, `/model`, `/spare`, `/wrapper`, `/auxiliary model` |
|
|
137
140
|
| Switch permissions | `-s safe`, `-s normal`, `-s danger`, or `/safe`, `/normal`, `/danger` |
|
|
138
141
|
| Enable Venice shortcut | `/venice` |
|
|
139
142
|
| Generate images | `/auxiliary image`, then ask for an image |
|
|
140
|
-
|
|
|
143
|
+
| Read screenshots/images | `/image-read path/to/screenshot.png "what changed?"` |
|
|
144
|
+
| Research with sources | `/web-research latest Android Gradle plugin official docs` |
|
|
145
|
+
| Enable research wrapper | `/research-wrapper gpt-5.4-mini medium` |
|
|
146
|
+
| Resume current project | `aginti resume` (`1` is newest/latest; Space shows more) |
|
|
141
147
|
| Browse all sessions | `aginti resume --all-sessions` |
|
|
142
148
|
| Queue into a running session | `aginti queue <session-id> "extra instruction"` |
|
|
143
149
|
| Clean empty sessions | `aginti --remove-empty-sessions` |
|
|
@@ -145,7 +151,9 @@ aginti --language de
|
|
|
145
151
|
| Sync reviewed skills | `aginti skillmesh status`, `aginti skillmesh sync` |
|
|
146
152
|
| Update CLI | `aginti update` |
|
|
147
153
|
|
|
148
|
-
Interactive chat supports slash completion, Up/Down selectors, multiline input with `Ctrl+J`, full resume history, Markdown rendering, visible run status, ASAP pipe messages during a run, and clean interruption/resume with `Ctrl+C`. Installed interactive commands also check npm for a newer AgInTiFlow release and show an update/skip selector; source checkouts and non-TTY automation are left alone.
|
|
154
|
+
Interactive chat supports slash completion, Up/Down selectors, a newest-first resume selector with direct Space pagination, multiline input with `Ctrl+J`, full resume history, Markdown rendering, visible run status, ASAP pipe messages during a run, and clean interruption/resume with `Ctrl+C`. Installed interactive commands also check npm for a newer AgInTiFlow release and show an update/skip selector; source checkouts and non-TTY automation are left alone.
|
|
155
|
+
|
|
156
|
+
AgInTiFlow treats `maxSteps` as an initial budget, not a silent infinite loop. By default, real-provider runs can receive a bounded extension only near the limit, only when recent tool/file/artifact evidence shows concrete progress, and never to bypass permission, package, host, or secret guardrails. Use `--dynamic-steps off` for a strict hard stop, or `--dynamic-steps on` to test the budget gate in mock/offline runs.
|
|
149
157
|
|
|
150
158
|
For a fully controlled one-shot resume, use an explicit session id and choose the task profile deliberately. Use `auto` for normal routing or `android` when the work is Android/emulator-specific:
|
|
151
159
|
|
|
@@ -162,7 +170,7 @@ aginti --resume <session-id> \
|
|
|
162
170
|
"Take a fresh screenshot of the running app in the emulator, save it with a durable filename in this project, and keep git status clean."
|
|
163
171
|
```
|
|
164
172
|
|
|
165
|
-
Permission behavior is intentionally consistent. Use `-s safe` for read-first sessions that ask before writes/setup, `-s normal` for current-project writes plus Docker setup, and `-s danger` for trusted host/full-access work. Inside chat, `/safe`, `/normal`, and `/danger` switch the current session. When a blocked action appears, CLI and web can offer `No`, `Yes this time`, or `Yes and always for this session` instead of making the agent retry command variants. Android/Gradle builds can use safe local env assignments such as `ANDROID_HOME=... JAVA_HOME=... ./gradlew assembleDebug` and relative workspace logs without requiring whole-host destructive mode. See [runtime modes and autonomy](docs/runtime-modes-and-autonomy.md) for the full contract.
|
|
173
|
+
Permission behavior is intentionally consistent. Use `-s safe` for read-first sessions that ask before writes/setup, `-s normal` for current-project writes plus Docker setup, and `-s danger` for trusted host/full-access work. In Docker workspace mode, common host data roots such as the user's home parent are mounted read-only at their original absolute paths so sibling projects and datasets can be inspected without granting host-write permission. Inside chat, `/safe`, `/normal`, and `/danger` switch the current session, and `/status` remains available while a run is active. When a blocked action appears, CLI and web can offer `No`, `Yes this time`, or `Yes and always for this session` instead of making the agent retry command variants. Android/Gradle builds can use safe local env assignments such as `ANDROID_HOME=... JAVA_HOME=... ./gradlew assembleDebug` and relative workspace logs without requiring whole-host destructive mode. See [runtime modes and autonomy](docs/runtime-modes-and-autonomy.md) for the full contract.
|
|
166
174
|
|
|
167
175
|
Tmux follows the same rule. In Docker sandbox mode, `tmux_start_session` and `tmux_send_keys` are durable host tools, but their commands must stay workspace-bound. In host mode, tmux startup/send command text follows the same host shell policy as `run_command`; broad host shell work needs explicit `--allow-destructive`. Use `--sandbox-mode host --allow-destructive` only when a tmux task really needs trusted whole-host execution.
|
|
168
176
|
|
|
@@ -202,12 +210,14 @@ The website keeps the visual walkthrough in a carousel so this README can stay f
|
|
|
202
210
|
| --- | --- |
|
|
203
211
|
| CLI agent workspace | Persistent terminal chat with project cwd, session resume, visible model/tool state, and clean command hints. |
|
|
204
212
|
| Local web workspace | Browser UI for sessions, runtime logs, artifacts, model settings, project controls, canvas previews, and sandbox status. |
|
|
205
|
-
| File tools | `inspect_project`, `list_files`, `read_file`, `search_files`, `write_file`, `apply_patch`, `open_workspace_file`, and `
|
|
213
|
+
| File tools | `inspect_project`, `list_files`, `read_file`, `search_files`, `write_file`, `apply_patch`, `open_workspace_file`, `preview_workspace`, and `read_image`. |
|
|
206
214
|
| Shell tools | Guarded host or Docker workspace shell execution with package-install policy and command safety checks. |
|
|
207
215
|
| Browser tools | Playwright browser actions with lazy startup and optional domain allowlists. |
|
|
208
216
|
| Model routing | DeepSeek fast/pro defaults, manual OpenAI/Qwen/Venice/mock routes, spare models, wrapper models, and auxiliary image models. |
|
|
217
|
+
| Writing specialist | A dedicated writing-only LLM call for prose, chapters, scripts, books, essays, research-paper sections, and revisions, with formatter handoff notes for Markdown/LaTeX/Final Draft. |
|
|
209
218
|
| Patch workflow | Codex-style patch envelopes, unified diffs, exact replacements, hashes, compact diffs, and path guardrails. |
|
|
210
219
|
| Parallel scouts | Optional scout calls for architecture, implementation, review, tests, git flow, research, symbol tracing, and dependency risk. |
|
|
220
|
+
| Image reading and web research | `read_image` uses OpenAI vision for workspace images when `OPENAI_API_KEY` is configured. `web_research` preserves source lists, and optional OpenAI hosted web search or `research_wrapper` can be used for higher-confidence research. |
|
|
211
221
|
| SCS mode | Optional Student-Committee-Supervisor quality gate for complicated or risky tasks. |
|
|
212
222
|
| AAPS adapter | Optional `@lazyingart/aaps` integration for `.aaps` workflow init, validate, parse, compile, dry-run, and run commands. |
|
|
213
223
|
| Image generation | Optional GRS AI and Venice image tools with saved manifests and canvas artifact previews. |
|
|
@@ -224,7 +234,7 @@ AgInTiFlow does not treat "the model" as one global setting. It has roles:
|
|
|
224
234
|
| Route | `deepseek/deepseek-v4-flash` | Cheap planner, triage, short tasks, routing decisions. |
|
|
225
235
|
| Main | `deepseek/deepseek-v4-pro` | Complex coding, debugging, writing, research, long tasks. |
|
|
226
236
|
| Spare | `openai/gpt-5.4` medium | Optional fallback or cross-check route. |
|
|
227
|
-
| Wrapper | `codex/gpt-5.5` medium | Optional external coding-agent advisor. |
|
|
237
|
+
| Wrapper | `codex/gpt-5.5` medium | Optional external coding-agent advisor; `research_wrapper` defaults to `gpt-5.4-mini` medium for image/web second opinions. |
|
|
228
238
|
| Auxiliary | `grsai/nano-banana-2` | Image generation and other non-text helper tools. |
|
|
229
239
|
|
|
230
240
|
Useful selectors:
|
|
@@ -339,6 +349,7 @@ More detail:
|
|
|
339
349
|
|
|
340
350
|
- [docs/model-selection.md](docs/model-selection.md)
|
|
341
351
|
- [docs/auxiliary-image-generation.md](docs/auxiliary-image-generation.md)
|
|
352
|
+
- [docs/perception-and-web-research.md](docs/perception-and-web-research.md)
|
|
342
353
|
- [docs/cli-i18n.md](docs/cli-i18n.md)
|
|
343
354
|
- [docs/skillmesh.md](docs/skillmesh.md)
|
|
344
355
|
|
|
@@ -352,6 +363,7 @@ More detail:
|
|
|
352
363
|
| Large-codebase engineering | [docs/large-codebase-engineering.md](docs/large-codebase-engineering.md) |
|
|
353
364
|
| Runtime modes and autonomy | [docs/runtime-modes-and-autonomy.md](docs/runtime-modes-and-autonomy.md) |
|
|
354
365
|
| Skills and tools | [docs/skills-and-tools.md](docs/skills-and-tools.md) |
|
|
366
|
+
| Image reading and web research | [docs/perception-and-web-research.md](docs/perception-and-web-research.md) |
|
|
355
367
|
| Skill Mesh | [docs/skillmesh.md](docs/skillmesh.md) |
|
|
356
368
|
| Housekeeping logs | [docs/housekeeping.md](docs/housekeeping.md) |
|
|
357
369
|
| npm publishing | [docs/npm-publishing.md](docs/npm-publishing.md) |
|
|
@@ -52,6 +52,24 @@ Mature coding agents avoid keeping an entire growing project in the prompt. AgIn
|
|
|
52
52
|
|
|
53
53
|
This keeps the main executor sober: it knows where it is in the repo, but it still re-reads exact files before editing and validates with commands rather than trusting stale memory.
|
|
54
54
|
|
|
55
|
+
## Surgical Context Pack
|
|
56
|
+
|
|
57
|
+
For complex engineering tasks where parallel scouts are disabled or unavailable, AgInTiFlow now prepares a lightweight surgical context pack before planning/execution:
|
|
58
|
+
|
|
59
|
+
- refreshes `.aginti/codebase-map.json` with `inspect_project`
|
|
60
|
+
- saves a session artifact named `surgical-context-pack.json`
|
|
61
|
+
- injects a compact repo overview into the model history
|
|
62
|
+
- includes an explicit surgical editing contract and evidence-card template
|
|
63
|
+
- carries the context handle in runtime snapshots so later steps can rehydrate exact files by path/search
|
|
64
|
+
|
|
65
|
+
This is intentionally not a whole-repo dump. The context pack is an overview handle. The executor must still search and read exact files before patching, state the active boundary, patch the smallest coherent surface, inspect the diff, and run focused checks.
|
|
66
|
+
|
|
67
|
+
The effective loop is:
|
|
68
|
+
|
|
69
|
+
```text
|
|
70
|
+
overview map -> active evidence card -> exact file windows -> surgical patch -> focused check -> diff review -> broader check if needed
|
|
71
|
+
```
|
|
72
|
+
|
|
55
73
|
## Git Discipline
|
|
56
74
|
|
|
57
75
|
When asked to commit, pull, merge, or push, the agent should run `git status --short` and `git diff --stat` first. It should commit only intended changes, use `git fetch` and `git pull --ff-only` when remote state matters, and stop for the user on conflicts, divergence, unrelated dirty files, or any merge/rebase/reset choice. Web and CLI logs fold long command output but keep full command summaries visible.
|
package/docs/model-selection.md
CHANGED
|
@@ -14,6 +14,8 @@ AgInTiFlow treats model choice as a role-based control plane. A provider supplie
|
|
|
14
14
|
|
|
15
15
|
Smart routing still works as before: normal work goes to the route model, and complex work goes to the main model. Manual provider/model selection remains available for one-off runs.
|
|
16
16
|
|
|
17
|
+
Long writing tasks use an additional tool boundary: `writing_specialist`. The main model still plans the run, manages files, formats Markdown/LaTeX/Final Draft output, compiles/checks artifacts, and finishes. The specialist gets only the writing brief, canon, style guide, prior draft, target, audience, constraints, and format intent, then returns prose plus a formatter handoff. This avoids polluting fiction/manuscript drafting with shell, browser, safety, and agent-runtime context. Set `AGINTI_WRITING_PROVIDER` or `AGINTI_WRITING_MODEL` to route this isolated writer separately from the main agent.
|
|
18
|
+
|
|
17
19
|
## CLI Commands
|
|
18
20
|
|
|
19
21
|
```bash
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
# Image Reading And Web Research
|
|
2
|
+
|
|
3
|
+
AgInTiFlow separates visual understanding, web search, and wrapper advice so each output has a clear evidence trail.
|
|
4
|
+
|
|
5
|
+
## Tools
|
|
6
|
+
|
|
7
|
+
| Tool | Purpose | Evidence |
|
|
8
|
+
| --- | --- | --- |
|
|
9
|
+
| `read_image` | Read workspace screenshots, plots, scanned text, diagrams, or allowed remote image URLs. | Saves `artifacts/perception/*-read-image.json` in the central session store with image hashes, MIME type, size, model, prompt, and typed result. |
|
|
10
|
+
| `web_search` | Cheap raw search snippets. | Returns compact titles, URLs, snippets, and fallback search URL. |
|
|
11
|
+
| `web_research` | Sourced research unit for current or external information. | Saves `artifacts/research/*-web-research.json` with query, mode, source list, and answer. |
|
|
12
|
+
| `research_wrapper` | Read-only strict-JSON second opinion from the selected wrapper. | Saves `artifacts/wrappers/*-research-wrapper.json` with wrapper, model, reasoning, metadata, result, and raw fallback output. |
|
|
13
|
+
|
|
14
|
+
## Defaults
|
|
15
|
+
|
|
16
|
+
- `read_image` uses OpenAI Responses vision when `OPENAI_API_KEY` is configured.
|
|
17
|
+
- `read_image` defaults to `AGINTI_PERCEPTION_MODEL=gpt-5.4-mini` and `AGINTI_PERCEPTION_REASONING=medium`, then falls back through `AGINTI_PERCEPTION_FALLBACK_MODELS` or `gpt-4o-mini` if the account lacks access to the preferred model.
|
|
18
|
+
- `web_research` defaults to lightweight snippet mode; use `mode=openai` only when hosted OpenAI web search is needed and configured.
|
|
19
|
+
- `web_research mode=openai` defaults to `AGINTI_WEB_RESEARCH_MODEL=gpt-5.4-mini` / `medium`, then falls back through `AGINTI_WEB_RESEARCH_FALLBACK_MODELS` or `gpt-4o-mini`.
|
|
20
|
+
- `research_wrapper` defaults to `AGINTI_RESEARCH_WRAPPER_MODEL=gpt-5.4-mini` and `AGINTI_RESEARCH_WRAPPER_REASONING=medium`.
|
|
21
|
+
- Wrapper advice is not evidence by itself. Verify file paths, sources, hashes, and artifacts before claiming completion.
|
|
22
|
+
|
|
23
|
+
## Interactive Commands
|
|
24
|
+
|
|
25
|
+
```text
|
|
26
|
+
/image-read artifacts/screenshots/app.png what looks wrong?
|
|
27
|
+
/web-research latest Android Gradle plugin official docs
|
|
28
|
+
/research-wrapper gpt-5.4-mini medium
|
|
29
|
+
/research-wrapper off
|
|
30
|
+
```
|
|
31
|
+
|
|
32
|
+
## Agent Usage
|
|
33
|
+
|
|
34
|
+
Use `read_image` when pixels matter. Do not guess from filenames or surrounding text if the user asks about a screenshot, chart, microscopy image, or scanned page.
|
|
35
|
+
|
|
36
|
+
Use `web_research` when freshness, sources, package docs, standards, or current external information matter. Use `domains` to restrict research to official or primary sources.
|
|
37
|
+
|
|
38
|
+
Use `research_wrapper` when a second model should cross-check image/web/research conclusions. The wrapper receives a strict JSON contract and should preserve uncertainty when it cannot directly inspect a source.
|
|
39
|
+
|
|
40
|
+
## Safety
|
|
41
|
+
|
|
42
|
+
- Local image paths must stay inside the workspace unless the run is explicitly trusted host mode.
|
|
43
|
+
- `.env`, credential files, private keys, and secret-looking paths are blocked.
|
|
44
|
+
- Remote images require web access and respect domain allowlists.
|
|
45
|
+
- Images are capped at 10 MB and four inputs per call.
|
|
46
|
+
- Artifacts preserve hashes and metadata but never store API keys.
|
|
47
|
+
|
|
48
|
+
See the design note in [references/multimodal-research-wrapper-design.md](../references/multimodal-research-wrapper-design.md).
|
|
@@ -52,7 +52,7 @@ The runtime must be consistent when an action is not permitted. A blocked action
|
|
|
52
52
|
Current contract:
|
|
53
53
|
|
|
54
54
|
- `safe` asks before file-tool writes and package/setup actions. It is the right mode for inspection, review, and cautious first passes.
|
|
55
|
-
- `normal` allows writes inside the current project folder and package/setup inside Docker workspace mode. It still blocks outside-project writes and host-system changes until approved.
|
|
55
|
+
- `normal` allows writes inside the current project folder, read-only inspection of visible host data roots, and package/setup inside Docker workspace mode. It still blocks outside-project writes and host-system changes until approved.
|
|
56
56
|
- `danger` is trusted host/full-access mode: host shell, destructive actions, host installs, password typing, and outside-workspace file paths are enabled. Use it only for tasks you trust; obvious secret/publish exfiltration guards remain hard stops.
|
|
57
57
|
- Workspace file tools may read and write inside the configured project folder when file tools are enabled.
|
|
58
58
|
- Narrow workspace-local shell actions such as safe probes, Gradle/TeX builds, and `chmod +x` on a project script may run when the command policy can classify them precisely.
|
|
@@ -111,6 +111,8 @@ aginti
|
|
|
111
111
|
|
|
112
112
|
This starts interactive chat with Docker workspace mode, file tools, shell tools, web search, and package installs allowed inside Docker.
|
|
113
113
|
|
|
114
|
+
Docker workspace mode also mounts common host data roots, such as the user's home parent, read-only at their original absolute paths. This lets a task in `/home/lachlan/ProjectsLFS/aginti-test` inspect a sibling dataset such as `/home/lachlan/ProjectsLFS/ProteinStructure` without switching to host-write mode. Outputs and edits still belong under `/workspace` unless the user explicitly approves stronger host permissions. Set `AGINTI_DOCKER_READONLY_HOST_MOUNTS=/path/a:/path/b` to override the read-only mounts, or set it to `off` to disable them.
|
|
115
|
+
|
|
114
116
|
Direct trusted host mode:
|
|
115
117
|
|
|
116
118
|
```bash
|
package/docs/skills-and-tools.md
CHANGED
|
@@ -6,7 +6,7 @@ AgInTiFlow separates **skills** from **tools** so the agent can stay general whi
|
|
|
6
6
|
|
|
7
7
|
**Skill**: Markdown guidance stored at `skills/<id>/SKILL.md`. A skill describes when to use a workflow, what to inspect first, which outputs matter, and which tools are usually useful. Skills are prompt context, not executable code.
|
|
8
8
|
|
|
9
|
-
**Tool**: A deterministic callable capability exposed to the model, such as `inspect_project`, `read_file`, `apply_patch`, `run_command`, `web_search`, `generate_image`, `preview_workspace`, `tmux_capture_pane`, or `send_to_canvas`.
|
|
9
|
+
**Tool**: A deterministic or bounded callable capability exposed to the model, such as `inspect_project`, `read_file`, `apply_patch`, `run_command`, `web_search`, `web_research`, `read_image`, `writing_specialist`, `research_wrapper`, `generate_image`, `preview_workspace`, `tmux_capture_pane`, or `send_to_canvas`.
|
|
10
10
|
|
|
11
11
|
**Profile**: A broad runtime mode such as `auto`, `code`, `latex`, or `maintenance`. Profiles tune routing, max steps, and general behavior. Skills can combine across profiles.
|
|
12
12
|
|
|
@@ -56,3 +56,18 @@ Selected skills are injected into the plan and execution prompts. The LLM still
|
|
|
56
56
|
Create `skills/<id>/SKILL.md` with valid YAML frontmatter and a short Markdown body. Keep descriptions strings, not YAML arrays, because loaders expect `id`, `label`, and `description` as scalar strings.
|
|
57
57
|
|
|
58
58
|
Good skills are small, actionable, and tool-aware. They should say what to inspect, what to create or verify, and what to avoid. They should not hard-code one exact task.
|
|
59
|
+
|
|
60
|
+
For visual or current-information tasks, prefer:
|
|
61
|
+
|
|
62
|
+
- `read_image` for screenshots, plots, diagrams, microscopy images, scanned text, and UI debugging.
|
|
63
|
+
- `web_research` for sourced research artifacts with source URLs and optional domain restrictions.
|
|
64
|
+
- `research_wrapper` for strict-JSON second opinions from the selected read-only wrapper, usually Codex `gpt-5.4-mini` medium.
|
|
65
|
+
|
|
66
|
+
See [Image Reading And Web Research](perception-and-web-research.md).
|
|
67
|
+
|
|
68
|
+
For substantial writing tasks, prefer:
|
|
69
|
+
|
|
70
|
+
- `writing_specialist` for isolated prose, scene, chapter, paper-section, script, book, essay, and revision drafting.
|
|
71
|
+
- The main agent for all non-writing work around that draft: file names, workspace edits, citations, Markdown/LaTeX/Final Draft formatting, PDF compilation, canvas publishing, and verification.
|
|
72
|
+
|
|
73
|
+
The writer receives only writing context: brief, canon, style guide, prior draft, target, audience, constraints, length, and downstream format intent. It should not receive shell/file/browser policy or agent-runtime details.
|
|
@@ -66,6 +66,12 @@ The current implementation is deliberately bounded:
|
|
|
66
66
|
|
|
67
67
|
Auto mode stays off for simple turns.
|
|
68
68
|
|
|
69
|
+
## Dynamic Step Budgets
|
|
70
|
+
|
|
71
|
+
AgInTiFlow treats `maxSteps` as the initial run budget. Near the boundary, the runtime may grant a bounded extension only when recent tool/file/artifact evidence shows concrete progress and no permission blocker is being bypassed.
|
|
72
|
+
|
|
73
|
+
Normal mode uses a lightweight deterministic monitor. `/scs on` and activated `/scs auto` runs add the SCS student budget gate, which can emit `extend_steps`, `deny_extension`, or `rethink_plan`. More steps never escalate permissions, package policy, host access, destructive actions, or secret access. Use `--dynamic-steps off` when a strict hard stop is required. The detailed design is tracked in [references/dynamic-step-budget-and-scs-auto.md](../references/dynamic-step-budget-and-scs-auto.md).
|
|
74
|
+
|
|
69
75
|
## When To Use It
|
|
70
76
|
|
|
71
77
|
Use SCS for:
|
package/i18n/README.ar.md
CHANGED
|
@@ -20,7 +20,7 @@
|
|
|
20
20
|
|
|
21
21
|
**وكلاء منخفضو التكلفة وواعون بالمشروع للمشكلات الواقعية.**
|
|
22
22
|
|
|
23
|
-
|
|
23
|
+
AgInTiFlow هو مساحة عمل project-aware agent للبحث والتطوير hybrid wet-dry، والذكاء المدرك للعتاد، وأتمتة البرمجيات، وسير العمل الصناعي. من تخطيط المختبر إلى تحليل البيانات، ومن التحكم بالعتاد إلى سكربتات الإنتاج، ومن microscopy والطائرات بدون طيار والروبوتات إلى التقارير، يساعد الوكلاء على العمل عبر API أو Web أو CLI مع إشراف SCS وسير عمل AAPS والتنفيذ المحمي والأدلة الدائمة.
|
|
24
24
|
|
|
25
25
|
باختصار: شغّل `aginti` داخل مشروع، أعطه مهمة، افحص خطته، شاهد كل استدعاء أداة، استأنف لاحقاً، واحتفظ بالمخرجات داخل مساحة العمل.
|
|
26
26
|
|
package/i18n/README.de.md
CHANGED
|
@@ -20,7 +20,7 @@
|
|
|
20
20
|
|
|
21
21
|
**Günstige, projektbewusste Agenten für reale Probleme.**
|
|
22
22
|
|
|
23
|
-
|
|
23
|
+
AgInTiFlow ist ein project-aware Agent-Workspace für hybride Wet-Dry-R&D, hardware-aware Intelligence, Software-Automatisierung und industrielle Workflows. Von Laborplanung zu Datenanalyse, von Hardwaresteuerung zu Produktionsskripten und von Mikroskopie, Drohnen und Robotern zu Berichten hilft es Agenten, über API, Web oder CLI mit SCS-Supervision, AAPS-Workflows, geschützter Ausführung und dauerhafter Evidenz zu arbeiten.
|
|
24
24
|
|
|
25
25
|
Kurz gesagt: Führe `aginti` in einem Projekt aus, gib eine Aufgabe vor, prüfe den Plan, sieh jeden Tool-Call, setze später fort und behalte die Ergebnisse im Workspace.
|
|
26
26
|
|
package/i18n/README.es.md
CHANGED
|
@@ -20,7 +20,7 @@
|
|
|
20
20
|
|
|
21
21
|
**Agentes de bajo costo y conscientes del proyecto para problemas reales.**
|
|
22
22
|
|
|
23
|
-
|
|
23
|
+
AgInTiFlow es un workspace de agentes project-aware para I+D híbrida wet-dry, inteligencia hardware-aware, automatización de software y workflows industriales. Desde planificación de laboratorio hasta análisis de datos, desde control de hardware hasta scripts de producción, y desde microscopía, drones y robots hasta informes, ayuda a los agentes a trabajar mediante API, Web o CLI con supervisión SCS, workflows AAPS, ejecución protegida y evidencia duradera.
|
|
24
24
|
|
|
25
25
|
La idea breve: ejecuta `aginti` dentro de un proyecto, dale una tarea, revisa el plan, ve cada llamada de herramienta, reanuda más tarde y conserva las salidas dentro de tu workspace.
|
|
26
26
|
|
package/i18n/README.fr.md
CHANGED
|
@@ -20,7 +20,7 @@
|
|
|
20
20
|
|
|
21
21
|
**Des agents à faible coût, conscients du projet, pour des problèmes réels.**
|
|
22
22
|
|
|
23
|
-
|
|
23
|
+
AgInTiFlow est un espace de travail d'agents project-aware pour la R&D hybride wet-dry, l'intelligence hardware-aware, l'automatisation logicielle et les workflows industriels. De la planification de laboratoire à l'analyse de données, du contrôle matériel aux scripts de production, et de la microscopie, des drones et des robots aux rapports, il aide les agents à travailler via API, Web ou CLI avec supervision SCS, workflows AAPS, exécution protégée et preuves durables.
|
|
24
24
|
|
|
25
25
|
En bref : lancez `aginti` dans un projet, donnez-lui une tâche, inspectez son plan, voyez chaque appel d’outil, reprenez plus tard et gardez les sorties dans votre workspace.
|
|
26
26
|
|
package/i18n/README.ja.md
CHANGED
|
@@ -20,7 +20,7 @@
|
|
|
20
20
|
|
|
21
21
|
**実際の問題に向けた、低コストでプロジェクトを理解するエージェント。**
|
|
22
22
|
|
|
23
|
-
|
|
23
|
+
AgInTiFlow は、ハイブリッド wet-dry R&D、hardware-aware intelligence、ソフトウェア自動化、産業ワークフローのための project-aware agent workspace です。実験計画からデータ解析、ハードウェア制御から生産スクリプト、顕微鏡画像・ドローン・ロボットからレポートまで、SCS 監督、AAPS ワークフロー、保護された実行、永続的な証拠を備えて、API、Web、CLI からエージェントが作業できるようにします。
|
|
24
24
|
|
|
25
25
|
要するに、プロジェクト内で `aginti` を実行し、タスクを渡し、計画とツール呼び出しを確認し、後で再開し、成果物をワークスペースに残せます。
|
|
26
26
|
|
package/i18n/README.ko.md
CHANGED
|
@@ -20,7 +20,7 @@
|
|
|
20
20
|
|
|
21
21
|
**실제 문제를 위한 저비용, 프로젝트 인식 에이전트.**
|
|
22
22
|
|
|
23
|
-
|
|
23
|
+
AgInTiFlow는 hybrid wet-dry R&D, hardware-aware intelligence, software automation, industrial workflow를 위한 project-aware agent workspace입니다. 실험 계획부터 데이터 분석까지, 하드웨어 제어부터 production script까지, microscopy, drone, robot부터 report까지, SCS supervision, AAPS workflow, guarded execution, durable evidence와 함께 API, Web, CLI로 에이전트가 작업하게 합니다.
|
|
24
24
|
|
|
25
25
|
짧게 말하면, 프로젝트 안에서 `aginti`를 실행하고 작업을 맡긴 뒤 계획과 모든 도구 호출을 확인하며, 나중에 다시 이어서 실행하고 결과물을 작업공간에 남길 수 있습니다.
|
|
26
26
|
|
package/i18n/README.ru.md
CHANGED
|
@@ -20,7 +20,7 @@
|
|
|
20
20
|
|
|
21
21
|
**Недорогие, проектно-ориентированные агенты для реальных задач.**
|
|
22
22
|
|
|
23
|
-
|
|
23
|
+
AgInTiFlow — project-aware рабочее пространство для агентов, предназначенное для hybrid wet-dry R&D, hardware-aware intelligence, автоматизации software и промышленных workflow. От планирования лабораторных работ до анализа данных, от управления hardware до production scripts, от microscopy, drones и robots до отчетов, оно помогает агентам работать через API, Web или CLI с SCS supervision, AAPS workflows, guarded execution и долговечной доказательной базой.
|
|
24
24
|
|
|
25
25
|
Коротко: запустите `aginti` внутри проекта, дайте задачу, проверьте план, увидьте каждый tool call, возобновите работу позже и сохраняйте результаты в рабочей папке.
|
|
26
26
|
|
package/i18n/README.vi.md
CHANGED
|
@@ -20,7 +20,7 @@
|
|
|
20
20
|
|
|
21
21
|
**Agent chi phí thấp, hiểu dự án, cho các vấn đề thực tế.**
|
|
22
22
|
|
|
23
|
-
|
|
23
|
+
AgInTiFlow là một project-aware agent workspace cho hybrid wet-dry R&D, hardware-aware intelligence, software automation và industrial workflows. Từ lập kế hoạch thí nghiệm đến phân tích dữ liệu, từ điều khiển phần cứng đến production scripts, và từ microscopy, drones, robots đến reports, nó giúp agent làm việc qua API, Web hoặc CLI với SCS supervision, AAPS workflows, guarded execution và durable evidence.
|
|
24
24
|
|
|
25
25
|
Nói ngắn gọn: chạy `aginti` trong một dự án, giao nhiệm vụ, xem kế hoạch, kiểm tra từng tool call, tiếp tục lại sau, và giữ kết quả trong workspace.
|
|
26
26
|
|
package/i18n/README.zh-Hans.md
CHANGED
|
@@ -20,7 +20,7 @@
|
|
|
20
20
|
|
|
21
21
|
**面向真实问题的低成本、项目感知智能体。**
|
|
22
22
|
|
|
23
|
-
|
|
23
|
+
AgInTiFlow 是一个 project-aware agent 工作空间,面向混合干湿研发、硬件感知智能、软件自动化和工业工作流。从实验规划到数据分析,从硬件控制到生产脚本,从显微成像、无人机和机器人到报告,它帮助智能体通过 API、Web 或 CLI 工作,并配合 SCS 监督、AAPS 工作流、受保护执行和持久证据。
|
|
24
24
|
|
|
25
25
|
简短理解:在项目目录里运行 `aginti`,交给它一个任务,检查它的计划,看到每一次工具调用,之后还能恢复会话,并把输出保留在你的工作区里。
|
|
26
26
|
|
package/i18n/README.zh-Hant.md
CHANGED
|
@@ -20,7 +20,7 @@
|
|
|
20
20
|
|
|
21
21
|
**面向真實問題的低成本、專案感知智能體。**
|
|
22
22
|
|
|
23
|
-
|
|
23
|
+
AgInTiFlow 是一個 project-aware agent 工作空間,面向混合乾濕研發、硬體感知智能、軟體自動化與工業工作流。從實驗規劃到資料分析,從硬體控制到生產腳本,從顯微成像、無人機和機器人到報告,它幫助智能體透過 API、Web 或 CLI 工作,並配合 SCS 監督、AAPS 工作流、受保護執行與持久證據。
|
|
24
24
|
|
|
25
25
|
簡短理解:在專案目錄執行 `aginti`,交給它一個任務,檢查它的計畫,看見每一次工具呼叫,之後還能恢復會話,並把輸出保留在你的工作區裡。
|
|
26
26
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@lazyingart/agintiflow",
|
|
3
|
-
"version": "0.20.
|
|
3
|
+
"version": "0.20.118",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"description": "AgInTiFlow is a project-aware agent workspace for hybrid wet-dry R&D, hardware-aware intelligence, software automation, and industrial workflows.",
|
|
6
6
|
"license": "Apache-2.0",
|
|
@@ -56,11 +56,13 @@
|
|
|
56
56
|
"scripts/smoke-canvas-artifacts.js",
|
|
57
57
|
"scripts/smoke-cli-chat.js",
|
|
58
58
|
"scripts/smoke-coding-tools.js",
|
|
59
|
+
"scripts/smoke-dynamic-step-budget.js",
|
|
59
60
|
"scripts/smoke-capabilities.js",
|
|
60
61
|
"scripts/smoke-auto-update.js",
|
|
61
62
|
"scripts/smoke-inbox.js",
|
|
62
63
|
"scripts/smoke-model-roles.js",
|
|
63
64
|
"scripts/smoke-platform.js",
|
|
65
|
+
"scripts/smoke-perception-research.js",
|
|
64
66
|
"scripts/smoke-permission-modes.js",
|
|
65
67
|
"scripts/smoke-skills.js",
|
|
66
68
|
"scripts/smoke-skillmesh.js",
|
|
@@ -82,6 +84,7 @@
|
|
|
82
84
|
"check": "node --check run.js && node --check web.js && node --check bin/aginti-cli.js && node --check src/*.js && node --check scripts/seed-supervised-homework.js",
|
|
83
85
|
"setup:toolchain-docker": "scripts/setup-agent-toolchain-docker.sh",
|
|
84
86
|
"smoke:coding-tools": "node scripts/smoke-coding-tools.js",
|
|
87
|
+
"smoke:dynamic-step-budget": "node scripts/smoke-dynamic-step-budget.js",
|
|
85
88
|
"smoke:aaps-adapter": "node scripts/smoke-aaps-adapter.js",
|
|
86
89
|
"smoke:auxiliary-tools": "node scripts/smoke-auxiliary-tools.js",
|
|
87
90
|
"smoke:auth": "node scripts/smoke-auth.js",
|
|
@@ -93,6 +96,7 @@
|
|
|
93
96
|
"smoke:inbox": "node scripts/smoke-inbox.js",
|
|
94
97
|
"smoke:model-roles": "node scripts/smoke-model-roles.js",
|
|
95
98
|
"smoke:platform": "node scripts/smoke-platform.js",
|
|
99
|
+
"smoke:perception-research": "node scripts/smoke-perception-research.js",
|
|
96
100
|
"smoke:permission-modes": "node scripts/smoke-permission-modes.js",
|
|
97
101
|
"smoke:tmux-tools": "node scripts/smoke-tmux-tools.js",
|
|
98
102
|
"smoke:web-api": "node scripts/smoke-web-api.js",
|
|
@@ -100,7 +104,7 @@
|
|
|
100
104
|
"real:deepseek": "node scripts/real-deepseek-capabilities.js",
|
|
101
105
|
"supervision:seed": "node scripts/seed-supervised-homework.js",
|
|
102
106
|
"storage:migrate": "node bin/aginti-cli.js storage migrate",
|
|
103
|
-
"test": "npm run check && npm run smoke:autoupdate && npm run smoke:web-api && npm run smoke:coding-tools && npm run smoke:aaps-adapter && npm run smoke:auxiliary-tools && npm run smoke:auth && npm run smoke:canvas-artifacts && npm run smoke:capabilities && npm run smoke:model-roles && npm run smoke:platform && npm run smoke:permission-modes && npm run smoke:skills && npm run smoke:skillmesh && npm run smoke:tmux-tools && npm run smoke:cli-chat && npm run smoke:inbox",
|
|
107
|
+
"test": "npm run check && npm run smoke:autoupdate && npm run smoke:web-api && npm run smoke:coding-tools && npm run smoke:dynamic-step-budget && npm run smoke:aaps-adapter && npm run smoke:auxiliary-tools && npm run smoke:perception-research && npm run smoke:auth && npm run smoke:canvas-artifacts && npm run smoke:capabilities && npm run smoke:model-roles && npm run smoke:platform && npm run smoke:permission-modes && npm run smoke:skills && npm run smoke:skillmesh && npm run smoke:tmux-tools && npm run smoke:cli-chat && npm run smoke:inbox",
|
|
104
108
|
"pack:dry-run": "npm pack --dry-run",
|
|
105
109
|
"smoke:capabilities": "node scripts/smoke-capabilities.js"
|
|
106
110
|
},
|