@iowarp/clio-coder 0.4.5 → 0.4.6
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 +24 -0
- package/CONTRIBUTING.md +14 -9
- package/NOTICE +16 -0
- package/README.md +312 -685
- package/dist/{acp-H3CU2HBQ.js → acp-UVEVWSDL.js} +6 -6
- package/dist/{agents-IXQQZ7BD.js → agents-VWY37DTK.js} +31 -30
- package/dist/assets/codewiki.json +1 -1
- package/dist/{auth-R7KYF7N3.js → auth-PCV2XQDV.js} +6 -6
- package/dist/{builtins-CRFDQUVP.js → builtins-PD652MTK.js} +3 -3
- package/dist/{chunk-SDWNDICN.js → chunk-24T2YZ7A.js} +58 -56
- package/dist/{chunk-FSTIBAGM.js → chunk-2AKYFREM.js} +7 -7
- package/dist/{chunk-SE4ZKILO.js → chunk-3BJGMT2D.js} +30 -9
- package/dist/{chunk-GVYWZNRK.js → chunk-3HQVBIKD.js} +2 -2
- package/dist/{chunk-EWD5P3GK.js → chunk-3JLFK5MW.js} +4 -4
- package/dist/{chunk-O2RQ7LCK.js → chunk-3O2ZAUGQ.js} +2 -2
- package/dist/{chunk-GXCCHKN6.js → chunk-3QKXHCGS.js} +4 -4
- package/dist/{chunk-YEJIG7LN.js → chunk-3WBALRQH.js} +7 -7
- package/dist/{chunk-I7VLWRK2.js → chunk-4DU2TVI4.js} +5 -5
- package/dist/{chunk-TEG3RYVZ.js → chunk-4U4TKZFR.js} +3 -3
- package/dist/{chunk-EHCPSZJF.js → chunk-4VMV6OS6.js} +2 -2
- package/dist/{chunk-T7FDXNRU.js → chunk-536HXRFE.js} +4 -4
- package/dist/{chunk-ZMZQEBKI.js → chunk-5QRX7SLS.js} +8 -8
- package/dist/{chunk-RXIOCVBZ.js → chunk-6HAO6X5B.js} +4 -4
- package/dist/{chunk-HGSLRG33.js → chunk-6OII3LOK.js} +2 -2
- package/dist/{chunk-U2JOLB7O.js → chunk-6RYDAVQT.js} +32 -32
- package/dist/{chunk-T53XI6I7.js → chunk-6VRRJT7L.js} +2 -2
- package/dist/{chunk-RLTT5GVY.js → chunk-7JSSKXG2.js} +4 -4
- package/dist/{chunk-633EXGZA.js → chunk-ACCKVSHU.js} +3 -3
- package/dist/{chunk-6SYEGZI3.js → chunk-B3MOMLJ4.js} +2 -2
- package/dist/{chunk-UXAC2FX4.js → chunk-BLTEAUCB.js} +3 -3
- package/dist/{chunk-DRD2A54W.js → chunk-BT7HGDOX.js} +15 -15
- package/dist/{chunk-F34AR6O3.js → chunk-DXLUVUD4.js} +5 -5
- package/dist/{chunk-HR3HPQ76.js → chunk-E7RF4KBO.js} +2 -2
- package/dist/chunk-EM2WNQS2.js +93 -0
- package/dist/{chunk-KYKNBD4Y.js → chunk-F5Z7EWMN.js} +953 -233
- package/dist/{chunk-VLPTKCKT.js → chunk-GLYBJ4RQ.js} +3 -3
- package/dist/{chunk-KDWLXVMN.js → chunk-HPTJF6DG.js} +16 -39
- package/dist/{chunk-6CDNRHWH.js → chunk-HZ2T2YED.js} +2 -2
- package/dist/{chunk-UTUNT5QL.js → chunk-HZFBVU5X.js} +7 -7
- package/dist/{chunk-KF6GFW6O.js → chunk-I2K2NCZQ.js} +7 -7
- package/dist/{chunk-5DDOTTG4.js → chunk-IGLVVNEG.js} +2 -2
- package/dist/{chunk-4SVIVOMC.js → chunk-IKRWLEDA.js} +5 -5
- package/dist/{chunk-R6MAYTMS.js → chunk-JMPL7NUB.js} +3 -3
- package/dist/{chunk-5ZMXGW7P.js → chunk-KAFMW7WM.js} +4 -85
- package/dist/{chunk-R6MICQYU.js → chunk-LIN2K3EL.js} +4 -4
- package/dist/{chunk-QEQISF75.js → chunk-LK2FN5JY.js} +1 -1
- package/dist/{chunk-YYB3MC65.js → chunk-N2OKBREN.js} +2 -2
- package/dist/{chunk-XXBQKW32.js → chunk-NNWJYUNO.js} +4 -4
- package/dist/{chunk-TZ7MFRG4.js → chunk-P5JMBPDJ.js} +22 -20
- package/dist/{chunk-WFKDPU7U.js → chunk-P6M7RKMI.js} +2 -2
- package/dist/{chunk-MDU3C27C.js → chunk-PZN2LQY6.js} +5 -5
- package/dist/{chunk-S32UQ5GL.js → chunk-Q7NNUHQV.js} +15 -15
- package/dist/{chunk-U7VQ4NI4.js → chunk-QCOV5DFY.js} +5 -5
- package/dist/{chunk-MC3JSVR6.js → chunk-QJMRYTCX.js} +7 -7
- package/dist/{chunk-DIMRLNIC.js → chunk-QNWRHOMF.js} +3 -3
- package/dist/{chunk-ILJ7DWGE.js → chunk-QXFBABFJ.js} +4 -4
- package/dist/chunk-R2CT5YDO.js +66 -0
- package/dist/{chunk-E3BQTQUP.js → chunk-RGZNQ5CT.js} +3 -3
- package/dist/{chunk-SBZX6ARC.js → chunk-SXQKNKRA.js} +7 -7
- package/dist/{chunk-WLMSOT73.js → chunk-TJFDL26W.js} +3 -3
- package/dist/{chunk-EQEJJ53P.js → chunk-VAHLPXPY.js} +2 -2
- package/dist/{chunk-7TKWWPD7.js → chunk-VANN3GDP.js} +3 -23
- package/dist/{chunk-GNQRWTMY.js → chunk-VHMX7SXF.js} +2 -2
- package/dist/{chunk-UL36QJX6.js → chunk-WKUYQBCG.js} +6 -6
- package/dist/{chunk-FKIOX6DS.js → chunk-WNGF5AJX.js} +9 -4
- package/dist/{chunk-ICO4TQ2F.js → chunk-WV6TDAPN.js} +36 -20
- package/dist/{chunk-K6RDB7IA.js → chunk-X3BI7HTV.js} +9 -9
- package/dist/{chunk-NY6IWDVU.js → chunk-XWMSPJYN.js} +2 -2
- package/dist/{chunk-7HBHHVCK.js → chunk-YPRSNUTC.js} +2 -2
- package/dist/{chunk-ONRTXOZY.js → chunk-ZS43Y2FT.js} +2 -2
- package/dist/cli/index.js +27 -27
- package/dist/{clio-5I2IBFYL.js → clio-QQCMTUZE.js} +6 -6
- package/dist/{code-nav-YXIAEZVS.js → code-nav-GUPM6766.js} +8 -8
- package/dist/{config-Y2JDJ3JJ.js → config-IIM7YOD3.js} +42 -41
- package/dist/{configure-SML6UBZ5.js → configure-4ZM5HWJX.js} +28 -10
- package/dist/{context-S2EEC3EJ.js → context-44BZLJ3J.js} +12 -12
- package/dist/{context-P5YSEO55.js → context-AIDVQKMW.js} +34 -33
- package/dist/{context-QQ53HSGJ.js → context-OL5P3HEP.js} +25 -24
- package/dist/{context-clear-TMEQCOTH.js → context-clear-OQV76MYP.js} +34 -33
- package/dist/{context-working-set-CNLSQN5K.js → context-working-set-ZUW3EGLS.js} +10 -9
- package/dist/{detail-5572VLBO.js → detail-UXPWRANG.js} +35 -34
- package/dist/{dispatch-runner-FRHD6P2O.js → dispatch-runner-P3ZW6G77.js} +38 -37
- package/dist/{doctor-N3LCM2LG.js → doctor-JJVGPZWT.js} +18 -17
- package/dist/{eval-BUU3ZOUZ.js → eval-V2RTN3UH.js} +26 -25
- package/dist/{evidence-DTGEN456.js → evidence-35PYWGSO.js} +34 -33
- package/dist/{evidence-SQ5DNFEN.js → evidence-CIGGKI6J.js} +36 -35
- package/dist/{evolve-IJNUFZDS.js → evolve-33SM3NJP.js} +34 -33
- package/dist/{fleet-ZNNVSYFO.js → fleet-LFO7SIPC.js} +62 -61
- package/dist/{fleet-commands-5YE7NPJL.js → fleet-commands-RLK72GU3.js} +9 -9
- package/dist/fleet-decisions-3SBSCTCW.js +1 -1
- package/dist/{fleet-graph-6HHPWF5T.js → fleet-graph-JZIBCGMW.js} +11 -11
- package/dist/{fleet-inspect-JEYMGCGC.js → fleet-inspect-2L5YGGZJ.js} +35 -34
- package/dist/{fleet-validate-4PM4GDDL.js → fleet-validate-LIAVKDUU.js} +12 -12
- package/dist/{fleet-verify-NJDTHTO3.js → fleet-verify-JIK3OQZR.js} +34 -33
- package/dist/{fleet-view-UP2BWQQY.js → fleet-view-IWHYGQKK.js} +35 -34
- package/dist/{init-S3GZQ5ZF.js → init-NJEDOTQW.js} +46 -45
- package/dist/{interop-YOTGXFJM.js → interop-RVCAYECG.js} +4 -4
- package/dist/{inventory-K2OZ36YJ.js → inventory-74UL7UHU.js} +35 -34
- package/dist/{library-GJI6W6OK.js → library-CTKZA7K3.js} +10 -10
- package/dist/{memory-OQOXQGYD.js → memory-I76I5VUH.js} +34 -33
- package/dist/{models-3IK2Y5WE.js → models-D4YDIQZQ.js} +19 -18
- package/dist/{monitor-FTJLTKCQ.js → monitor-NKVD55HX.js} +40 -39
- package/dist/{orchestrator-N47O7SFD.js → orchestrator-I6OATVPK.js} +658 -1092
- package/dist/{preload-65U34NG6.js → preload-EJAWJEIO.js} +34 -33
- package/dist/{reset-MUVQDLNL.js → reset-4XMQKDNZ.js} +5 -3
- package/dist/{resources-LM76COAO.js → resources-TVYVXK3Q.js} +10 -10
- package/dist/{run-3VFZQ33N.js → run-OWQNNSJU.js} +61 -60
- package/dist/{share-4JUB4BL7.js → share-NPZZMUXG.js} +11 -11
- package/dist/{skills-S36AAJHU.js → skills-OXFEAWMT.js} +12 -12
- package/dist/{skills-eval-G6T57L7M.js → skills-eval-J5TCKSJA.js} +38 -37
- package/dist/{skills-inventory-WLM46PJH.js → skills-inventory-7II4DM57.js} +10 -10
- package/dist/{slash-commands-GBARG3Y7.js → slash-commands-MDSDSWYF.js} +26 -25
- package/dist/{targets-N5REUETU.js → targets-KILZEOCE.js} +36 -20
- package/dist/{tasks-6BVY5YZF.js → tasks-R6P6OV22.js} +7 -7
- package/dist/{terminal-lease-57UEOJKS.js → terminal-lease-LZCG2KN3.js} +2 -2
- package/dist/{upgrade-4HD5HAIV.js → upgrade-D2OZH6IQ.js} +9 -9
- package/dist/{usage-4GWM2WWP.js → usage-PIASNUS4.js} +40 -39
- package/dist/{verifiers-GSKWKWVG.js → verifiers-LTHUY2PX.js} +9 -9
- package/dist/{verify-3AS3ULCY.js → verify-HYF7KBVE.js} +7 -7
- package/dist/{wiki-generate-7BV7XWIY.js → wiki-generate-RK7JQ5NP.js} +51 -50
- package/dist/worker/entry.js +41 -39
- package/docs/architecture/context-engine.md +1 -1
- package/docs/architecture/tui-design.md +45 -30
- package/docs/guide/commands-and-modes.md +26 -25
- package/docs/guide/configuration-and-targets.md +122 -27
- package/docs/guide/configuration-reference.md +9 -4
- package/docs/guide/fleet-dispatch.md +1 -6
- package/docs/guide/glossary.md +1 -1
- package/docs/guide/installation-and-lifecycle.md +44 -11
- package/docs/process/development-pipeline.md +1 -1
- package/docs/process/documentation-coverage.md +1 -1
- package/docs/process/release-cut-checklist.md +18 -6
- package/package.json +1 -1
- package/src/cli/ask.ts +10 -10
- package/src/cli/configure-editor.ts +51 -0
- package/src/cli/configure-interop.ts +1 -1
- package/src/cli/configure-oauth.ts +1 -1
- package/src/cli/configure-onboarding.ts +232 -96
- package/src/cli/configure-prompts.ts +76 -0
- package/src/cli/configure-quick.ts +274 -0
- package/src/cli/configure-target.ts +14 -2
- package/src/cli/configure.ts +413 -174
- package/src/cli/oauth-manual-input.ts +1 -1
- package/src/cli/reset.ts +2 -0
- package/src/cli/select.ts +35 -4
- package/src/cli/upgrade.ts +2 -2
- package/src/core/config.ts +6 -1
- package/src/core/defaults.ts +33 -11
- package/src/{interactive → core}/external-editor.ts +4 -4
- package/src/domains/config/classify.ts +1 -1
- package/src/domains/config/keybindings.ts +3 -31
- package/src/domains/providers/probe/fingerprint.ts +13 -6
- package/src/domains/providers/probe/reasoning.ts +2 -0
- package/src/domains/providers/runtimes/common/probe-helpers.ts +23 -7
- package/src/domains/providers/runtimes/protocol/anthropic-compat.ts +7 -2
- package/src/domains/providers/runtimes/protocol/openai-compat.ts +10 -4
- package/src/interactive/application-controller.ts +1 -31
- package/src/interactive/chat-panel.ts +163 -637
- package/src/interactive/chat-renderer.ts +13 -30
- package/src/interactive/dispatch-board.ts +1 -3
- package/src/interactive/editor-submit.ts +8 -31
- package/src/interactive/footer/dashboard.ts +8 -3
- package/src/interactive/footer/widgets.ts +50 -91
- package/src/interactive/interactive-application.ts +16 -42
- package/src/interactive/interactive-event-projection.ts +2 -44
- package/src/interactive/interactive-input-runtime.ts +3 -28
- package/src/interactive/interactive-presentation.ts +30 -9
- package/src/interactive/interactive-slash-runtime.ts +3 -40
- package/src/interactive/layout.ts +29 -4
- package/src/interactive/overlay-general-openers.ts +2 -0
- package/src/interactive/overlay-lifecycle.ts +1 -0
- package/src/interactive/overlay-session-lifecycle.ts +1 -1
- package/src/interactive/overlays/settings.ts +9 -8
- package/src/interactive/renderers/preview.ts +16 -0
- package/src/interactive/renderers/tool-execution.ts +67 -160
- package/src/interactive/renderers/worker-entry.ts +57 -41
- package/src/interactive/slash-autocomplete.ts +1 -6
- package/src/interactive/slash-commands.ts +7 -39
- package/src/interactive/status/controller.ts +0 -5
- package/src/interactive/status/state-machine.ts +44 -26
- package/src/interactive/status/types.ts +3 -0
- package/src/interactive/status/verbs.ts +13 -12
- package/src/interactive/transcript-detail.ts +50 -112
- package/src/interactive/view/artifacts.ts +4 -0
- package/src/interactive/view/view-overlay.ts +44 -34
- package/src/tools/presentation.ts +1 -1
- package/src/tools/registry.ts +1 -1
- package/src/tools/verify/numeric.ts +4 -4
package/README.md
CHANGED
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
|
|
8
8
|
<h1 align="center">Clio Coder</h1>
|
|
9
9
|
|
|
10
|
-
<p align="center"><strong>The coding agent for the people who maintain the code that science runs on.</strong><br />Your models. Your machines.
|
|
10
|
+
<p align="center"><strong>The coding agent for the people who maintain the code that science runs on.</strong><br />Your models. Your machines. Work you can inspect.</p>
|
|
11
11
|
|
|
12
12
|
<p align="center">
|
|
13
13
|
<a href="https://github.com/iowarp/clio-coder/releases/latest"><img alt="Latest release" src="https://img.shields.io/github/v/tag/iowarp/clio-coder?sort=semver&label=release&color=00d4db&style=flat-square" /></a>
|
|
@@ -19,157 +19,136 @@
|
|
|
19
19
|
<a href="https://www.nsf.gov/awardsearch/showAward?AWD_ID=2411318"><img alt="NSF #2411318" src="https://img.shields.io/badge/NSF-%232411318-241131?style=flat-square" /></a>
|
|
20
20
|
</p>
|
|
21
21
|
|
|
22
|
-
---
|
|
23
22
|
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
23
|
+
<p align="center">
|
|
24
|
+
<a href="#get-started">Get started</a> ·
|
|
25
|
+
<a href="#built-for-scientific-software">Why Clio?</a> ·
|
|
26
|
+
<a href="docs/README.md">Documentation</a> ·
|
|
27
|
+
<a href="https://github.com/iowarp/clio-coder/issues">Feedback</a>
|
|
28
|
+
</p>
|
|
29
29
|
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
context, bounded tools, worker agents, durable sessions, safety controls, and
|
|
34
|
-
evidence you can inspect after the work is done.
|
|
30
|
+
Clio Coder is an open-source coding agent for your terminal. Ask it to explain a
|
|
31
|
+
repository, investigate a failing test, or help implement a change. It reads the
|
|
32
|
+
project, works with your tools, and shows you what it did.
|
|
35
33
|
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
34
|
+
Built for scientific software and high-performance computing (HPC), Clio works
|
|
35
|
+
with the code researchers maintain every day: simulation kernels, numerical
|
|
36
|
+
libraries, data pipelines, and mixed-language projects. Use a model on your
|
|
37
|
+
workstation, connect to your lab's gateway, or bring a cloud API.
|
|
38
|
+
|
|
39
|
+
**Experimental, and actively developed.** Keep your work in version control and
|
|
40
|
+
review generated changes. Clio helps with the engineering; scientific validation
|
|
41
|
+
still needs your expertise. See [release notes](CHANGELOG.md) for current changes.
|
|
39
42
|
|
|
40
43
|
## Get started
|
|
41
44
|
|
|
45
|
+
You need **Node.js 22.19 or newer**, Linux or macOS, and a running model server
|
|
46
|
+
or API endpoint. Windows support is currently best effort.
|
|
47
|
+
|
|
42
48
|
```bash
|
|
43
49
|
npm install -g @iowarp/clio-coder
|
|
44
|
-
clio-coder configure
|
|
45
50
|
cd /path/to/your/project
|
|
51
|
+
clio-coder configure
|
|
46
52
|
clio-coder
|
|
47
53
|
```
|
|
48
54
|
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
55
|
+
In the configuration launcher, choose **Quick Connect**:
|
|
56
|
+
|
|
57
|
+
1. **Paste your endpoint URL.** For example, `localhost:1234` for LM Studio,
|
|
58
|
+
`localhost:11434` for Ollama, or your lab gateway's URL.
|
|
59
|
+
2. **Supply a key and choose a model when asked.** A keyless LM Studio or Ollama
|
|
60
|
+
server with one model skips both questions. Type to search longer model lists.
|
|
61
|
+
3. **Review and Connect.** You're ready to start a session.
|
|
62
|
+
|
|
63
|
+
Clio uses [recommended defaults](docs/guide/configuration-and-targets.md#recommended-defaults):
|
|
64
|
+
workspace edits with command approval, one worker at a time, a $5 tracked session
|
|
65
|
+
budget, and a regular terminal interface. Other settings can wait. Escape goes
|
|
66
|
+
back during setup; `clio-coder configure --settings` opens the full menu.
|
|
52
67
|
|
|
53
|
-
|
|
54
|
-
for
|
|
55
|
-
posture, and `/quit` when you are done. If anything about the installation
|
|
56
|
-
looks wrong, `clio-coder doctor` performs a read-only health check.
|
|
68
|
+
**New in 0.4.6:** Quick Connect and simpler output styles. See
|
|
69
|
+
[Install](#install) for source builds and other package managers.
|
|
57
70
|
|
|
58
|
-
|
|
59
|
-
> Add `--omit=optional` to the npm install to skip the Claude Agent SDK's large
|
|
60
|
-
> optional binary. Only the `claude-sdk` worker runtime needs it. See
|
|
61
|
-
> [Optional dependencies](#optional-dependency-the-claude-agent-sdk).
|
|
71
|
+
## Built for scientific software
|
|
62
72
|
|
|
63
|
-
|
|
|
73
|
+
| What matters | How Clio helps |
|
|
64
74
|
| --- | --- |
|
|
65
|
-
|
|
|
66
|
-
|
|
|
67
|
-
|
|
|
68
|
-
|
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
Clio is not limited to scientific repositories, but research software shapes
|
|
79
|
-
its priorities:
|
|
80
|
-
|
|
81
|
-
- **Bring your own inference.** Run locally with llama.cpp, LM Studio, Ollama,
|
|
82
|
-
vLLM, SGLang, or Lemonade; connect a compatible gateway or cloud provider;
|
|
83
|
-
or use supported ChatGPT and Claude subscription routes. Chat and worker
|
|
84
|
-
fleets can use different targets.
|
|
85
|
-
- **Understand before changing.** A project handbook and structural code index
|
|
86
|
-
give the model durable orientation without pouring the whole repository into
|
|
87
|
-
every prompt. Context use, compaction, and recall remain visible.
|
|
88
|
-
- **Delegate focused work.** Built-in worker recipes receive explicit tools,
|
|
89
|
-
limits, scopes, and result contracts. Fleet contracts can add review gates,
|
|
90
|
-
resumable steps, and placement across machines over SSH.
|
|
91
|
-
- **Keep authority with the operator.** Read-only, suggest, auto-edit, and
|
|
92
|
-
full-auto modes all pass through the same policy boundary. Bash is
|
|
93
|
-
default-deny, and project rules can narrow access further.
|
|
94
|
-
- **Leave evidence, not just prose.** Runs record tool activity, model usage,
|
|
95
|
-
routing, safety decisions, timing, and result conformance in receipts and
|
|
96
|
-
durable ledgers that can be inspected later.
|
|
97
|
-
- **Fit into existing tools.** Use the interactive terminal, one-shot headless
|
|
98
|
-
commands, JSONL event streams, or the Agent Client Protocol for editor hosts.
|
|
99
|
-
|
|
100
|
-
The goal is not to make a model infallible. It is to make useful work easier to
|
|
101
|
-
direct, easier to constrain, and easier to verify.
|
|
75
|
+
| **Your models and infrastructure** | Connect local inference, institutional gateways, or cloud APIs. Use different models for different jobs when you need to. |
|
|
76
|
+
| **Understanding the project** | Keep project guidance and a searchable code index alongside the repository, so long sessions have a useful starting point. |
|
|
77
|
+
| **Multi-agent work** | Delegate focused tasks to coding, testing, and review agents. Start on one machine; configure workers over SSH for larger workflows. |
|
|
78
|
+
| **Work you can check** | Inspect edits, tool activity, usage, and recorded run results. Keep reference tests and scientific checks in the loop. |
|
|
79
|
+
|
|
80
|
+
You can start with one model and one conversation. Distributed workers,
|
|
81
|
+
additional tools, and elaborate workflows are optional.
|
|
82
|
+
|
|
83
|
+
Try a first request:
|
|
84
|
+
|
|
85
|
+
> Explain how this repository builds and tests its numerical solver. Identify
|
|
86
|
+
> the main entry points and suggest a small verification task before changing code.
|
|
102
87
|
|
|
103
88
|
## A first session
|
|
104
89
|
|
|
105
|
-
Run
|
|
90
|
+
Run `clio-coder` inside your project and describe the task in plain language.
|
|
91
|
+
Tool calls appear as they run, and edits appear as diffs.
|
|
106
92
|
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
93
|
+
| Want to… | Use… |
|
|
94
|
+
| --- | --- |
|
|
95
|
+
| Find commands | `/help` |
|
|
96
|
+
| Change models or settings | `/settings` |
|
|
97
|
+
| Check context use or cost | `/context`, `/cost` |
|
|
98
|
+
| Include a project file | Type `@` and choose a path |
|
|
99
|
+
| See delegated tasks | `/tasks` |
|
|
100
|
+
| Leave the session | `/quit` |
|
|
111
101
|
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
and activity visible without taking over the terminal.
|
|
102
|
+
<details>
|
|
103
|
+
<summary><strong>More session controls and shortcuts</strong></summary>
|
|
115
104
|
|
|
116
|
-
|
|
|
105
|
+
| Want to… | Use… |
|
|
117
106
|
| --- | --- |
|
|
118
|
-
|
|
|
119
|
-
|
|
|
120
|
-
|
|
|
121
|
-
| Run a shell command whose result may enter model context | `! command` |
|
|
122
|
-
| Run a private shell command that is never sent to the model | `!! command` |
|
|
123
|
-
| Ask a side question without changing the main session | `/btw <question>` |
|
|
107
|
+
| Run a shell command | `! command` |
|
|
108
|
+
| Run a private shell command excluded from model context | `!! command` |
|
|
109
|
+
| Ask a side question | `/btw <question>` |
|
|
124
110
|
| Request a read-only second opinion | `/oracle <question>` |
|
|
125
|
-
| Delegate a focused task | `/run
|
|
126
|
-
| Inspect delegated work | `/tasks` or `Alt+W` |
|
|
111
|
+
| Delegate a focused task | `/run tester "Run the parser tests and explain any failure."` |
|
|
127
112
|
| Branch or resume a conversation | `/tree`, `/fork`, `/resume`, `/new` |
|
|
128
113
|
| Carry current state into a fresh session | `/handoff <goal>` |
|
|
129
|
-
| Browse agents, prompts,
|
|
114
|
+
| Browse agents, prompts, and skills | `/resources` |
|
|
130
115
|
| Load a specialized skill | `/skill <name>` |
|
|
131
|
-
|
|
|
116
|
+
| Export the transcript | `/export` |
|
|
132
117
|
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
excluded from model replay, compaction, and context accounting.
|
|
118
|
+
Enter steers an active turn; `Alt+Enter` queues a follow-up; Escape cancels.
|
|
119
|
+
Pasted multiline text beginning with `!` or `!!` is treated as prompt text.
|
|
120
|
+
Private shell output remains visible to you but is excluded from model replay
|
|
121
|
+
and compaction. See [Commands and Modes](docs/guide/commands-and-modes.md).
|
|
138
122
|
|
|
139
|
-
|
|
140
|
-
[Commands and Modes](docs/guide/commands-and-modes.md).
|
|
123
|
+
</details>
|
|
141
124
|
|
|
142
125
|
## Choose where models run
|
|
143
126
|
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
127
|
+
Start with the model service you already have. Clio supports local engines
|
|
128
|
+
including **Ollama, LM Studio, llama.cpp, vLLM, SGLang, and Lemonade**; lab
|
|
129
|
+
services such as **LiteLLM gateways and Argonne ALCF inference**; and cloud
|
|
130
|
+
providers including **OpenAI, Anthropic, Google, and OpenRouter**.
|
|
131
|
+
|
|
132
|
+
Quick Connect handles discoverable HTTP endpoints. For subscription sign-in,
|
|
133
|
+
AWS credentials, or manual model setup, use **Settings → Targets & Auth**.
|
|
134
|
+
The [connection guide](docs/guide/configuration-and-targets.md) covers each route.
|
|
135
|
+
|
|
136
|
+
<details>
|
|
137
|
+
<summary><strong>Provider coverage, separate worker models, and scripted setup</strong></summary>
|
|
138
|
+
|
|
139
|
+
A saved connection is called a **target**. Chat uses one target; workers may
|
|
140
|
+
share it or use their own.
|
|
141
|
+
|
|
142
|
+
| Connection family | Supported routes |
|
|
156
143
|
| --- | --- |
|
|
157
144
|
| Local inference | llama.cpp, LM Studio, Ollama, vLLM, SGLang, Lemonade |
|
|
158
|
-
| Compatible
|
|
145
|
+
| Compatible APIs | OpenAI-compatible and Anthropic-compatible endpoints; LiteLLM |
|
|
159
146
|
| Cloud APIs | OpenAI, Anthropic, Google, Groq, Mistral, DeepSeek, OpenRouter, Amazon Bedrock |
|
|
160
|
-
| Institutional gateways | Argonne ALCF Sophia and Metis
|
|
161
|
-
| Subscriptions | ChatGPT
|
|
162
|
-
| Worker integrations | Claude SDK, Claude Code, experimental
|
|
163
|
-
|
|
164
|
-
The interactive wizard is the easiest path:
|
|
165
|
-
|
|
166
|
-
```bash
|
|
167
|
-
clio-coder configure
|
|
168
|
-
clio-coder targets --probe
|
|
169
|
-
```
|
|
147
|
+
| Institutional gateways | Argonne ALCF Sophia and Metis through Globus OAuth |
|
|
148
|
+
| Subscriptions | ChatGPT through `openai-codex`; Claude through `anthropic-max` |
|
|
149
|
+
| Worker integrations | Claude SDK, Claude Code, experimental Antigravity delegation, and configured ACP agents |
|
|
170
150
|
|
|
171
|
-
|
|
172
|
-
advertises unless you deliberately pass `--force`:
|
|
151
|
+
To script setup, use the model ID advertised by your server:
|
|
173
152
|
|
|
174
153
|
```bash
|
|
175
154
|
clio-coder configure \
|
|
@@ -179,161 +158,76 @@ clio-coder configure \
|
|
|
179
158
|
--model your-model-id \
|
|
180
159
|
--set-orchestrator \
|
|
181
160
|
--set-fleet-default
|
|
182
|
-
|
|
183
|
-
clio-coder targets use local-lmstudio
|
|
184
161
|
clio-coder targets --probe
|
|
185
162
|
```
|
|
186
163
|
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
[Model Catalog](docs/architecture/model-catalog.md), then keep the serving configuration with
|
|
192
|
-
your own results.
|
|
193
|
-
|
|
194
|
-
> [!NOTE]
|
|
195
|
-
> Subscription OAuth routes use the vendors' existing coding-agent credential
|
|
196
|
-
> paths. Whether a subscription may be used outside a vendor's first-party
|
|
197
|
-
> application depends on that vendor's current terms. Enable those routes at
|
|
198
|
-
> your discretion.
|
|
199
|
-
|
|
200
|
-
The full target, auth, profile, and routing reference is
|
|
201
|
-
[Configuration and Targets](docs/guide/configuration-and-targets.md). The ALCF route
|
|
202
|
-
has a separate [setup guide](docs/architecture/alcf-provider.md).
|
|
203
|
-
|
|
204
|
-
## Project context that stays with the project
|
|
205
|
-
|
|
206
|
-
Clio uses several layers of context, each with a different job:
|
|
207
|
-
|
|
208
|
-
- **`CLIO-CODER.md`** is the human-owned project handbook loaded for each
|
|
209
|
-
session. `clio-coder context init` can draft it from the repository and adopt
|
|
210
|
-
existing `AGENTS.md`, `CLAUDE.md`, `GEMINI.md`, Cursor, or Copilot guidance
|
|
211
|
-
with provenance. You can edit and version it like any other project file.
|
|
212
|
-
- **The codewiki** is a structural index produced by
|
|
213
|
-
`clio-coder context index`. It lets `code_nav` locate files and symbols
|
|
214
|
-
without broad, expensive reads.
|
|
215
|
-
- **The working set** keeps durable tool results in the session ledger while
|
|
216
|
-
controlling which bodies remain in the model window. Evicted content can be
|
|
217
|
-
recalled by reference; history is not silently rewritten.
|
|
218
|
-
- **Skills** are focused `SKILL.md` procedures loaded when needed. The shipped
|
|
219
|
-
catalog pins content hashes, and `clio-coder skills eval <name>` can run a
|
|
220
|
-
skill's executable checks.
|
|
221
|
-
- **Task memory** surfaces bounded reminders during long work and keeps durable
|
|
222
|
-
lessons behind explicit review and approval.
|
|
223
|
-
|
|
224
|
-
Start with:
|
|
164
|
+
Models differ in tool calling, reasoning, context capacity, and hardware needs.
|
|
165
|
+
Start with the measured notes in the [Model Catalog](docs/architecture/model-catalog.md).
|
|
166
|
+
Subscription integrations depend on the vendor's current terms and sign-in
|
|
167
|
+
support. See the [ALCF guide](docs/architecture/alcf-provider.md) for institutional access.
|
|
225
168
|
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
```
|
|
169
|
+
Advanced settings can route memory, compaction, and worker profiles separately.
|
|
170
|
+
Without a separate memory route, memory stays rules-only; compaction uses the
|
|
171
|
+
chat model. A LiteLLM gateway retains control of physical backend routing.
|
|
230
172
|
|
|
231
|
-
|
|
232
|
-
directory. See [Context Engine](docs/architecture/context-engine.md),
|
|
233
|
-
[Working Set](docs/architecture/context-working-set.md), and
|
|
234
|
-
[Proactive Memory](docs/guide/proactive-memory.md) for the detailed contracts.
|
|
235
|
-
|
|
236
|
-
The local skills marketplace may offer a matching shipped skill during a
|
|
237
|
-
request. Every promotion install requires an explicit bound operator answer,
|
|
238
|
-
including in full-auto. Promotion installs retain their catalog source gate,
|
|
239
|
-
and installation does not activate the skill. Active
|
|
240
|
-
project and user skill trees are operator-owned: main and worker tool admissions
|
|
241
|
-
refuse direct and recognized shell mutations. Draft skill changes outside those
|
|
242
|
-
roots, then use the operator's installation or update workflow. This bounded
|
|
243
|
-
command inspection does not confine arbitrary programs or dynamic shell paths.
|
|
244
|
-
Manual installs remain available for a source you deliberately choose. See
|
|
245
|
-
[Skills Marketplace](docs/guide/skills-marketplace.md).
|
|
246
|
-
|
|
247
|
-
For a repository architecture map, run `clio-coder context index` followed by
|
|
248
|
-
`clio-coder context map`. The latter writes a deterministic JSON seed from the
|
|
249
|
-
index's directory areas and imports. The operator-installed `archify` remote
|
|
250
|
-
skill validates and delivers the interactive diagram; Clio ships its wrapper
|
|
251
|
-
and pinned install metadata, while the renderer comes from upstream. Source
|
|
252
|
-
citations require a pinned GitHub revision. Validation can still report
|
|
253
|
-
composition warnings that need human edits.
|
|
254
|
-
|
|
255
|
-
## Delegate with bounds
|
|
256
|
-
|
|
257
|
-
Clio's orchestrator can send focused assignments to worker agents instead of
|
|
258
|
-
stretching one conversation across every task. A worker receives a declared
|
|
259
|
-
role, tool profile, scope, budget, target, and typed result contract. Reviewers
|
|
260
|
-
and judges remain read-only.
|
|
261
|
-
|
|
262
|
-
On one machine:
|
|
263
|
-
|
|
264
|
-
```text
|
|
265
|
-
/run tester "Run the focused tests for the parser and explain any failure."
|
|
266
|
-
/tasks
|
|
267
|
-
```
|
|
173
|
+
</details>
|
|
268
174
|
|
|
269
|
-
|
|
270
|
-
writers, and review gates:
|
|
175
|
+
## Grow into larger workflows
|
|
271
176
|
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
clio-coder fleet validate validation-pass
|
|
275
|
-
clio-coder fleet graph validation-pass
|
|
276
|
-
clio-coder fleet run validation-pass
|
|
277
|
-
```
|
|
177
|
+
Clio can help with everyday development or coordinate several agents across a
|
|
178
|
+
research workflow. Add structure when it helps your project.
|
|
278
179
|
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
completed steps can be resumed from durable evidence. Shared workspaces must
|
|
282
|
-
appear at the same absolute path on every node, and `localhost` always means
|
|
283
|
-
the node where that worker runs.
|
|
180
|
+
<details>
|
|
181
|
+
<summary><strong>Project guidance, code navigation, and reusable skills</strong></summary>
|
|
284
182
|
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
183
|
+
`CLIO-CODER.md` is your editable project handbook. Clio can draft it from the
|
|
184
|
+
repository and adopt guidance from existing agent instruction files. A code
|
|
185
|
+
index helps locate files and symbols; skills provide focused procedures when
|
|
186
|
+
needed.
|
|
187
|
+
|
|
188
|
+
```bash
|
|
189
|
+
clio-coder context init
|
|
190
|
+
clio-coder context index
|
|
191
|
+
clio-coder context
|
|
192
|
+
```
|
|
288
193
|
|
|
289
|
-
|
|
194
|
+
Generated project state lives under `.clio-coder/`. During longer work, Clio
|
|
195
|
+
manages which observations stay in the model's context while retaining durable
|
|
196
|
+
history. Skill installation and promotion require operator approval.
|
|
290
197
|
|
|
291
|
-
|
|
198
|
+
Read about [project context](docs/architecture/context-engine.md),
|
|
199
|
+
[working sets](docs/architecture/context-working-set.md),
|
|
200
|
+
[memory](docs/guide/proactive-memory.md), and
|
|
201
|
+
[skills](docs/guide/skills-marketplace.md). For an architecture map,
|
|
202
|
+
`clio-coder context map` produces a seed that the optional `archify` skill can render.
|
|
292
203
|
|
|
293
|
-
|
|
294
|
-
| --- | --- |
|
|
295
|
-
| `read-only` | Inspect only; execution and mutation are denied. |
|
|
296
|
-
| `suggest` | Prepare mutations and wait for approval. |
|
|
297
|
-
| `auto-edit` | Apply file edits; execution and dispatch still pass their gates. |
|
|
298
|
-
| `full-auto` | Run approved action classes unattended, still inside safety-net and project-policy limits. |
|
|
204
|
+
</details>
|
|
299
205
|
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
paths and project policy can narrow authority further. A worker can never gain
|
|
303
|
-
more authority than the process that dispatched it.
|
|
206
|
+
<details>
|
|
207
|
+
<summary><strong>Multi-agent workflows and workers over SSH</strong></summary>
|
|
304
208
|
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
worker identity, timing, and result conformance. Inspect the same evidence from
|
|
308
|
-
the CLI or TUI:
|
|
209
|
+
Give workers focused assignments with defined tools, file scopes, and budgets.
|
|
210
|
+
Reviewers and judges remain read-only. For a repeatable build-and-test workflow:
|
|
309
211
|
|
|
310
212
|
```bash
|
|
311
|
-
clio-coder
|
|
312
|
-
clio-coder
|
|
313
|
-
clio-coder
|
|
314
|
-
clio-coder
|
|
315
|
-
clio-coder trace inspect --json
|
|
213
|
+
clio-coder fleet new validation-pass --from build-test
|
|
214
|
+
clio-coder fleet validate validation-pass
|
|
215
|
+
clio-coder fleet graph validation-pass
|
|
216
|
+
clio-coder fleet run validation-pass
|
|
316
217
|
```
|
|
317
218
|
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
mixed session/stdout evidence and inherited fork history are not reconciled;
|
|
323
|
-
full reconciliation is deferred to v0.4.5 or later, and 0.4.3 does not add an
|
|
324
|
-
automatic cost-comparison rejection. See the
|
|
325
|
-
[Eval Runner](docs/process/eval-runner.md#token-accounting--provenance) for source
|
|
326
|
-
and timing limits.
|
|
219
|
+
A fleet describes the steps, dependencies, and review gates. Declared SSH nodes
|
|
220
|
+
can run the same worker protocol, with explicit placement and capacity. Shared
|
|
221
|
+
workspaces must have the same absolute path on each node; `localhost` refers
|
|
222
|
+
to the node running the worker. Start with one worker before expanding.
|
|
327
223
|
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
remain part of the job. The detailed boundaries are in
|
|
331
|
-
[Safety Model](docs/architecture/safety-model.md), [Observability](docs/architecture/observability.md),
|
|
332
|
-
and [Scientific Validation](docs/process/scientific-validation.md).
|
|
224
|
+
See [Fleet Dispatch](docs/guide/fleet-dispatch.md) and the
|
|
225
|
+
[Fleet Demo Runbook](docs/process/fleet-demo-runbook.md).
|
|
333
226
|
|
|
334
|
-
|
|
227
|
+
</details>
|
|
335
228
|
|
|
336
|
-
|
|
229
|
+
<details>
|
|
230
|
+
<summary><strong>Automation, editor connections, and recorded results</strong></summary>
|
|
337
231
|
|
|
338
232
|
```bash
|
|
339
233
|
clio-coder run "Summarize this repository's entry points."
|
|
@@ -342,193 +236,80 @@ clio-coder run "<task>" --agent coder
|
|
|
342
236
|
clio-coder acp
|
|
343
237
|
```
|
|
344
238
|
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
In headless runs (`clio-coder run`):
|
|
239
|
+
Headless text mode writes the final answer to stdout and diagnostics to stderr.
|
|
240
|
+
`--json` emits JSONL events. `acp` connects editor hosts through the Agent Client
|
|
241
|
+
Protocol. Interactive approval prompts cannot be answered headlessly; worker
|
|
242
|
+
requests that need permission are denied by default.
|
|
350
243
|
|
|
351
|
-
|
|
352
|
-
for operator confirmation is automatically denied. Interactive session commands
|
|
353
|
-
(such as `/settings`, `/help`, or `/context compact`) are refused upfront with
|
|
354
|
-
an error. Skill invocations that include a task (such as
|
|
355
|
-
`/skill <name> <task>`) and declared prompt templates expand normally; a bare
|
|
356
|
-
`/skill` invocation without arguments is rejected.
|
|
357
|
-
- Dispatched workers follow `fleet.permissions.mode`: default `deny` records a
|
|
358
|
-
structured tool denial and continues execution, while `fail` aborts the worker.
|
|
244
|
+
Inspect recorded runs with:
|
|
359
245
|
|
|
360
|
-
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
Discover commands and inspect local health without guessing syntax:
|
|
246
|
+
```bash
|
|
247
|
+
clio-coder evidence list
|
|
248
|
+
clio-coder evidence inspect <evidence-id>
|
|
249
|
+
clio-coder trace phases <run-id>
|
|
250
|
+
clio-coder usage report
|
|
251
|
+
```
|
|
367
252
|
|
|
368
|
-
|
|
369
|
-
|
|
370
|
-
| View standard operator commands | `clio-coder --help` | Day-to-day commands for chat, config, context, and fleets. |
|
|
371
|
-
| View complete command listing | `clio-coder --help --all` | Standard commands plus harness developer tools under `clio-coder dev`. |
|
|
372
|
-
| Run developer instruments | `clio-coder dev <command>` | Harness tools: `components`, `evolve`, and `share`. |
|
|
373
|
-
| Health check state and credentials | `clio-coder doctor` | Read-only scan of settings schema, credentials mode (`0o600`), and directories. |
|
|
374
|
-
| Repair missing skeletons | `clio-coder doctor --fix` | Non-destructively creates missing directories and repairs credential permissions. |
|
|
375
|
-
| Show resolved paths | `clio-coder paths [--json]` | Displays resolved configuration, data, state, and cache directories. |
|
|
376
|
-
| Inspect active settings | `clio-coder config inspect` | Displays layered configuration and provenance. |
|
|
253
|
+
See [output and exit codes](docs/guide/exit-codes-and-output.md),
|
|
254
|
+
[ACP](docs/architecture/acp.md), and [Observability](docs/architecture/observability.md).
|
|
377
255
|
|
|
378
|
-
|
|
256
|
+
</details>
|
|
379
257
|
|
|
380
|
-
|
|
381
|
-
durable areas: `chat`, `fleet`, `targets`, `context`, `safety`, `interface`, and
|
|
382
|
-
`integrations`. The same names are accepted as `/settings` deep links. Use the
|
|
383
|
-
Settings Center for ordinary changes; use the YAML inventory when you need a
|
|
384
|
-
reviewable lab or fleet configuration.
|
|
258
|
+
## Safety and scientific validation
|
|
385
259
|
|
|
386
|
-
|
|
387
|
-
|
|
388
|
-
|
|
260
|
+
Clio lets you choose how much authority to give it. The default allows workspace
|
|
261
|
+
edits and requires approval for unrecognized commands. Read-only and more
|
|
262
|
+
autonomous modes are available; the safety policy applies at every level.
|
|
263
|
+
Workers cannot gain more authority than the session that launched them.
|
|
389
264
|
|
|
390
|
-
|
|
391
|
-
|
|
392
|
-
|
|
265
|
+
Recorded tool activity and run results help you review the work. They do not
|
|
266
|
+
establish scientific correctness. Validate numerical results, inspect changes,
|
|
267
|
+
and use your project's reference tests. Usage estimates depend on available
|
|
268
|
+
pricing and telemetry; the tracked session budget is not a provider billing cap.
|
|
393
269
|
|
|
394
|
-
|
|
395
|
-
|
|
396
|
-
[Settings Inventory](docs/guide/configuration-and-targets.md#settings-inventory) and
|
|
397
|
-
[Artifact Placement](docs/architecture/artifact-placement.md).
|
|
270
|
+
Read the [Safety Model](docs/architecture/safety-model.md) and
|
|
271
|
+
[Scientific Validation](docs/process/scientific-validation.md) for the boundaries.
|
|
398
272
|
|
|
399
273
|
## Install
|
|
400
274
|
|
|
401
|
-
|
|
402
|
-
|
|
403
|
-
- Node.js `>=22.19.0` on `PATH`, including when installing with Bun
|
|
404
|
-
- Linux or macOS; Windows support is currently best effort
|
|
405
|
-
- A package manager for registry installation, or Git and pnpm for source builds
|
|
406
|
-
- At least one local, institutional, subscription, or cloud model target
|
|
407
|
-
- Optional: Deno `>=2.9.5` for compiling or running the canonical Workbench GUI
|
|
408
|
-
|
|
409
|
-
Registry commands below install the version published under `latest`. This
|
|
410
|
-
checkout prepares **0.4.5**; until that release is published, `latest` remains
|
|
411
|
-
**0.4.4**. The v0.4.5 source workflow uses pnpm **10.34.5**, pinned in
|
|
412
|
-
`package.json`, and Pi **0.85.1**.
|
|
413
|
-
|
|
414
|
-
### Install with npm, pnpm, or Bun
|
|
415
|
-
|
|
416
|
-
Choose one global installation command:
|
|
417
|
-
|
|
418
|
-
| Package manager | Install | Global executable directory |
|
|
419
|
-
| --- | --- | --- |
|
|
420
|
-
| npm | `npm install -g @iowarp/clio-coder` | `$(npm prefix -g)/bin` on Unix; the prefix itself on Windows |
|
|
421
|
-
| pnpm | `pnpm add -g @iowarp/clio-coder` | `pnpm bin -g`; run `pnpm setup` and restart your shell if no global bin directory is configured |
|
|
422
|
-
| Bun | `bun add -g @iowarp/clio-coder` | `bun pm bin -g`, usually `~/.bun/bin` |
|
|
275
|
+
The npm command in [Get started](#get-started) is the shortest path. Other
|
|
276
|
+
package managers install the same CLI; Node.js is required for all of them.
|
|
423
277
|
|
|
424
|
-
|
|
425
|
-
|
|
426
|
-
global executable directory on `PATH`, then verify and configure:
|
|
278
|
+
<details>
|
|
279
|
+
<summary><strong>Other package managers and the optional Claude SDK</strong></summary>
|
|
427
280
|
|
|
428
|
-
|
|
429
|
-
clio-coder --version
|
|
430
|
-
clio-coder configure
|
|
431
|
-
clio-coder doctor
|
|
432
|
-
```
|
|
433
|
-
|
|
434
|
-
To select a particular published version, append `@<version>` to the package
|
|
435
|
-
name. For example, `npm install -g @iowarp/clio-coder@0.4.4` installs v0.4.4.
|
|
436
|
-
|
|
437
|
-
### Run without a global installation
|
|
438
|
-
|
|
439
|
-
| Package manager | Command |
|
|
281
|
+
| Package manager | Install |
|
|
440
282
|
| --- | --- |
|
|
441
|
-
|
|
|
442
|
-
|
|
|
443
|
-
|
|
|
444
|
-
| bunx | `bunx @iowarp/clio-coder@latest --help` |
|
|
445
|
-
| Yarn 2+ | `yarn dlx -p @iowarp/clio-coder@latest clio-coder --help` |
|
|
446
|
-
|
|
447
|
-
Replace `--help` with `configure`, another CLI command, or nothing to start an
|
|
448
|
-
interactive session. These commands download packages into the manager's cache;
|
|
449
|
-
Clio still uses its normal configuration and session directories. Node.js is
|
|
450
|
-
required for every route; do not pass Bun's `--bun` runtime override.
|
|
451
|
-
|
|
452
|
-
Yarn Classic users can install with `yarn global add @iowarp/clio-coder` and
|
|
453
|
-
put `yarn global bin` on `PATH`. Modern Yarn uses the `dlx` route above.
|
|
454
|
-
For a repository-local CLI dependency, use `npm install --save-dev`,
|
|
455
|
-
`pnpm add -D`, or `bun add -d` with `@iowarp/clio-coder`, then invoke the local
|
|
456
|
-
binary through that manager's exec/run command. Source development in this
|
|
457
|
-
repository uses the pinned pnpm workflow below.
|
|
458
|
-
|
|
459
|
-
#### Optional dependency: the Claude Agent SDK
|
|
460
|
-
|
|
461
|
-
`@anthropic-ai/claude-agent-sdk` includes a large platform-specific binary.
|
|
462
|
-
Skip optional dependencies when you do not need the `claude-sdk` worker runtime:
|
|
463
|
-
|
|
464
|
-
| Package manager | Install without optional dependencies |
|
|
465
|
-
| --- | --- |
|
|
466
|
-
| npm | `npm install -g @iowarp/clio-coder --omit=optional` |
|
|
467
|
-
| pnpm | `pnpm add -g @iowarp/clio-coder --no-optional` |
|
|
468
|
-
| Bun | `bun add -g @iowarp/clio-coder --omit=optional` |
|
|
469
|
-
|
|
470
|
-
Other runtimes do not need that SDK. To include it later, reinstall with your
|
|
471
|
-
chosen manager and its optional dependencies enabled; for npm, use
|
|
472
|
-
`npm install -g @iowarp/clio-coder --include=optional`.
|
|
473
|
-
See [Optional dependencies](docs/guide/installation-and-lifecycle.md#optional-dependency-the-claude-agent-sdk).
|
|
283
|
+
| pnpm | `pnpm add -g @iowarp/clio-coder` |
|
|
284
|
+
| Bun | `bun add -g @iowarp/clio-coder` |
|
|
285
|
+
| Yarn Classic | `yarn global add @iowarp/clio-coder` |
|
|
474
286
|
|
|
475
|
-
|
|
287
|
+
Without a global install, use `npx --yes @iowarp/clio-coder@latest`,
|
|
288
|
+
`pnpm dlx @iowarp/clio-coder@latest`, or `bunx @iowarp/clio-coder@latest`.
|
|
289
|
+
Modern Yarn supports `yarn dlx -p @iowarp/clio-coder@latest clio-coder`.
|
|
290
|
+
Keep Node on `PATH`; Bun manages installation but the CLI runs on Node.
|
|
476
291
|
|
|
477
|
-
|
|
478
|
-
|
|
479
|
-
| Package manager | Update | Remove package and executable |
|
|
480
|
-
| --- | --- | --- |
|
|
481
|
-
| npm | `npm install -g @iowarp/clio-coder@latest` | `npm uninstall -g @iowarp/clio-coder` |
|
|
482
|
-
| pnpm | `pnpm add -g @iowarp/clio-coder@latest` | `pnpm remove -g @iowarp/clio-coder` |
|
|
483
|
-
| Bun | `bun add -g @iowarp/clio-coder@latest` | `bun remove -g @iowarp/clio-coder` |
|
|
484
|
-
| Yarn Classic | `yarn global add @iowarp/clio-coder@latest` | `yarn global remove @iowarp/clio-coder` |
|
|
485
|
-
|
|
486
|
-
After a package-manager update, run the installed v0.4.5 CLI's local migration
|
|
487
|
-
and metadata checks without another package installation:
|
|
292
|
+
The optional Claude Agent SDK includes a large platform-specific binary.
|
|
293
|
+
Only the `claude-sdk` worker runtime needs it. To skip it:
|
|
488
294
|
|
|
489
295
|
```bash
|
|
490
|
-
clio-coder
|
|
491
|
-
clio-coder doctor
|
|
296
|
+
npm install -g @iowarp/clio-coder --omit=optional
|
|
492
297
|
```
|
|
493
298
|
|
|
494
|
-
|
|
495
|
-
|
|
496
|
-
|
|
497
|
-
For a cached execution, rerun the same runner with `@latest` to select the
|
|
498
|
-
latest release. Package-manager removal preserves Clio's configuration and
|
|
499
|
-
sessions. Clear your shell's command cache with `hash -r` (Bash) or `rehash`
|
|
500
|
-
(Zsh) after changing installations.
|
|
501
|
-
|
|
502
|
-
For deliberate removal of user-level configuration, data, state, and cache,
|
|
503
|
-
see [Lifecycle operations](#lifecycle-operations) and
|
|
299
|
+
For pnpm use `--no-optional`; for Bun use `--omit=optional`. Reinstall with
|
|
300
|
+
optional dependencies enabled if you need the SDK later. Release `.tgz` files
|
|
301
|
+
can also be installed with your package manager. See
|
|
504
302
|
[Installation and Lifecycle](docs/guide/installation-and-lifecycle.md).
|
|
505
303
|
|
|
506
|
-
|
|
507
|
-
|
|
508
|
-
Download `iowarp-clio-coder-<version>.tgz` from the matching
|
|
509
|
-
[GitHub release](https://github.com/iowarp/clio-coder/releases), then install the
|
|
510
|
-
local artifact with your chosen manager:
|
|
304
|
+
</details>
|
|
511
305
|
|
|
512
|
-
|
|
513
|
-
|
|
514
|
-
# Or: pnpm add -g ./iowarp-clio-coder-<version>.tgz
|
|
515
|
-
# Or: bun add -g ./iowarp-clio-coder-<version>.tgz
|
|
516
|
-
clio-coder --version
|
|
517
|
-
```
|
|
306
|
+
<details>
|
|
307
|
+
<summary><strong>Build from source</strong></summary>
|
|
518
308
|
|
|
519
|
-
|
|
520
|
-
resolves dependencies from the registry unless your package-manager cache
|
|
521
|
-
already contains them. GitHub's automatically generated source archives need
|
|
522
|
-
the source build steps below.
|
|
523
|
-
|
|
524
|
-
### Install from source
|
|
525
|
-
|
|
526
|
-
From source, the v0.4.5 release uses this pinned pnpm workflow. The tag becomes
|
|
527
|
-
available when the release is cut; before then, use an existing local `v045`
|
|
528
|
-
checkout with the steps following `cd clio-coder`:
|
|
309
|
+
From source, the latest stable release uses the pinned pnpm workflow:
|
|
529
310
|
|
|
530
311
|
```bash
|
|
531
|
-
git clone --branch v0.4.
|
|
312
|
+
git clone --branch v0.4.6 https://github.com/iowarp/clio-coder.git
|
|
532
313
|
cd clio-coder
|
|
533
314
|
corepack enable pnpm
|
|
534
315
|
pnpm run install:local
|
|
@@ -537,329 +318,175 @@ hash -r
|
|
|
537
318
|
"$HOME/.local/bin/clio-coder" --version
|
|
538
319
|
```
|
|
539
320
|
|
|
540
|
-
|
|
541
|
-
|
|
542
|
-
|
|
543
|
-
|
|
544
|
-
|
|
545
|
-
|
|
546
|
-
`pnpm run install:local` performs `pnpm install --frozen-lockfile`, builds, and
|
|
547
|
-
links the launcher at `${CLIO_CODER_BIN_DIR:-$HOME/.local/bin}/clio-coder`.
|
|
548
|
-
There is no need to install dependencies separately first. If you already
|
|
549
|
-
synced them, use `pnpm run install:local --skip-deps`. For an existing build,
|
|
550
|
-
`bash scripts/install-local.sh --skip-deps --no-build` only links and runs
|
|
551
|
-
local setup checks. Use `--dry-run` to inspect the planned actions.
|
|
552
|
-
|
|
553
|
-
Run `command -v clio-coder` to see which installation the bare command reaches;
|
|
554
|
-
your shell may otherwise keep resolving an older launcher earlier on `PATH`.
|
|
321
|
+
The installer resolves dependencies, builds, and links the CLI into
|
|
322
|
+
`${CLIO_CODER_BIN_DIR:-$HOME/.local/bin}`. If Corepack is unavailable, install
|
|
323
|
+
pnpm with `npm install -g pnpm@10.34.5`. Use `--dry-run` to preview installation,
|
|
324
|
+
`--skip-deps` after syncing dependencies, or
|
|
325
|
+
`bash scripts/install-local.sh --skip-deps --no-build` for an existing build.
|
|
555
326
|
|
|
556
|
-
|
|
327
|
+
Run `command -v clio-coder` to check which launcher your shell reaches. After
|
|
328
|
+
changing `PATH`, use `hash -r` in Bash or `rehash` in Zsh.
|
|
557
329
|
|
|
558
|
-
|
|
559
|
-
pnpm
|
|
560
|
-
|
|
561
|
-
node dist/cli/index.js --help
|
|
562
|
-
node dist/cli/index.js
|
|
563
|
-
```
|
|
330
|
+
For development without a launcher, run `pnpm install --frozen-lockfile`,
|
|
331
|
+
`pnpm run build`, and `node dist/cli/index.js`. `pnpm run dev` rebuilds on edits;
|
|
332
|
+
restart Clio to load the new build.
|
|
564
333
|
|
|
565
|
-
|
|
334
|
+
</details>
|
|
566
335
|
|
|
567
|
-
|
|
568
|
-
|
|
569
|
-
```
|
|
336
|
+
<details>
|
|
337
|
+
<summary><strong>Update, repair, reset, or uninstall</strong></summary>
|
|
570
338
|
|
|
571
|
-
|
|
339
|
+
Use the package manager that installed Clio. For npm:
|
|
572
340
|
|
|
573
341
|
```bash
|
|
574
|
-
clio-coder
|
|
342
|
+
npm install -g @iowarp/clio-coder@latest
|
|
343
|
+
clio-coder upgrade --post-install
|
|
575
344
|
clio-coder doctor
|
|
576
|
-
clio-coder doctor --fix
|
|
577
|
-
```
|
|
578
|
-
|
|
579
|
-
After updating your chosen source revision, rerun `pnpm run install:local`,
|
|
580
|
-
`hash -r`, and `clio-coder upgrade`. `pnpm run dev` rebuilds the CLI bundles on
|
|
581
|
-
source changes; restart a running Clio process to load the new build.
|
|
582
|
-
|
|
583
|
-
To remove the launcher and deliberately purge Clio's user configuration, data,
|
|
584
|
-
sessions, and caches, preview the removal before confirming it:
|
|
585
|
-
|
|
586
|
-
```bash
|
|
587
|
-
clio-coder uninstall --dry-run
|
|
588
|
-
clio-coder uninstall --remove-binary
|
|
589
345
|
```
|
|
590
346
|
|
|
591
|
-
|
|
592
|
-
`
|
|
593
|
-
|
|
594
|
-
|
|
595
|
-
lifecycle guide below.
|
|
347
|
+
For source installs, update your checkout and rerun `pnpm run install:local`.
|
|
348
|
+
`clio-coder doctor` checks local health without modifying files;
|
|
349
|
+
`doctor --fix` repairs the structures and permissions it supports.
|
|
350
|
+
`clio-coder configure --edit` validates settings edits and can repair malformed YAML.
|
|
596
351
|
|
|
597
|
-
|
|
352
|
+
To remove the npm package, use `npm uninstall -g @iowarp/clio-coder`.
|
|
353
|
+
Removing the package preserves Clio's user data. For a deliberate data purge,
|
|
354
|
+
preview `clio-coder uninstall --dry-run`; `uninstall --remove-binary` also
|
|
355
|
+
removes a local source launcher. Per-project files are preserved.
|
|
598
356
|
|
|
599
|
-
|
|
600
|
-
|
|
601
|
-
|
|
602
|
-
| Structure repair | `clio-coder doctor --fix` | Creates missing directory skeletons and restores credential permissions (does not migrate schemas). |
|
|
603
|
-
| Lifecycle upgrade | `clio-coder upgrade [--dry-run]` | Applies pending registered migrations (`migrations.json`) and refreshes install metadata. |
|
|
604
|
-
| Selective reset | `clio-coder reset --help` | Lists destructive reset options and their scopes; use `--dry-run` to preview. |
|
|
605
|
-
| Full uninstall | `clio-coder uninstall [--remove-binary] [--force]` | Removes user config, data, state, and cache roots; `--remove-binary` unlinks launcher. |
|
|
357
|
+
`clio-coder reset --help` lists selective reset options. Use `--dry-run` before
|
|
358
|
+
a reset. The [lifecycle guide](docs/guide/installation-and-lifecycle.md) explains
|
|
359
|
+
exactly which settings, credentials, and session directories each option affects.
|
|
606
360
|
|
|
607
|
-
|
|
608
|
-
[Installation and Lifecycle](docs/guide/installation-and-lifecycle.md).
|
|
361
|
+
</details>
|
|
609
362
|
|
|
610
|
-
##
|
|
363
|
+
## Optional interfaces
|
|
611
364
|
|
|
612
|
-
The
|
|
613
|
-
|
|
614
|
-
the loopback interface (`127.0.0.1`) and manages one child `clio-coder acp`
|
|
615
|
-
process per open project.
|
|
365
|
+
The terminal is the main starting point. Source checkouts also include a
|
|
366
|
+
desktop/browser interface and a local viewer for recorded runs.
|
|
616
367
|
|
|
617
|
-
|
|
618
|
-
|
|
619
|
-
the source directory retains the name `workbench`.
|
|
368
|
+
<details>
|
|
369
|
+
<summary><strong>Desktop and browser GUI</strong></summary>
|
|
620
370
|
|
|
621
|
-
The
|
|
622
|
-
|
|
623
|
-
has an optional running-only filter. **How this app works** opens searchable
|
|
624
|
-
help and keyboard shortcuts, and **Settings → About** identifies the GUI and
|
|
625
|
-
connected Clio versions and capabilities.
|
|
626
|
-
|
|
627
|
-
### State and settings
|
|
628
|
-
|
|
629
|
-
The GUI launches `clio-coder` from `PATH` and uses the same Clio settings and
|
|
630
|
-
authentication as the TUI. Choose targets and models through Clio's settings;
|
|
631
|
-
no separate testing profile is needed.
|
|
632
|
-
|
|
633
|
-
The GUI persists only its recent-project list in `projects.json`. Its state root is resolved in order:
|
|
634
|
-
`$CLIO_CODER_GUI_STATE_DIR`, then deprecated `$CLIO_WORKBENCH_STATE_DIR`, then
|
|
635
|
-
`$XDG_STATE_HOME/clio-coder-gui`, and finally `~/.local/state/clio-coder-gui`.
|
|
636
|
-
On first start after upgrade, legacy `clio-workbench` directories are migrated atomically.
|
|
637
|
-
|
|
638
|
-
### Running Workbench from source
|
|
639
|
-
|
|
640
|
-
Requirements: Deno `>=2.9.5`, workspace dependencies installed from the root
|
|
641
|
-
(`pnpm install --frozen-lockfile`), and `clio-coder` on `PATH`.
|
|
642
|
-
|
|
643
|
-
The supported full GUI runs through the Deno host on port 4173:
|
|
644
|
-
|
|
645
|
-
```bash
|
|
646
|
-
cd apps/workbench
|
|
647
|
-
|
|
648
|
-
# Build dist/ and serve on http://127.0.0.1:4173:
|
|
649
|
-
deno task browser
|
|
650
|
-
|
|
651
|
-
# Serve an existing dist/ build directly:
|
|
652
|
-
deno task start
|
|
653
|
-
|
|
654
|
-
# Use any free port and open the default browser:
|
|
655
|
-
deno task start --port=0 --open
|
|
656
|
-
```
|
|
657
|
-
|
|
658
|
-
`deno task browser` builds `dist/` once with Vite and starts the host. The Vite
|
|
659
|
-
configuration (`vite.config.ts`) has no backend proxy; restarting `deno task browser`
|
|
660
|
-
rebuilds and serves updated assets after edits. See the contributor notes in
|
|
661
|
-
[apps/workbench/README.md](apps/workbench/README.md).
|
|
662
|
-
|
|
663
|
-
### GUI application lifecycle
|
|
664
|
-
|
|
665
|
-
Lifecycle tasks in `apps/workbench/` are managed via `scripts/gui-lifecycle.ts`:
|
|
371
|
+
The GUI in `apps/workbench/` uses your existing Clio configuration. It requires
|
|
372
|
+
Deno `>=2.9.5`, workspace dependencies, and `clio-coder` on `PATH`.
|
|
666
373
|
|
|
667
374
|
```bash
|
|
668
375
|
cd apps/workbench
|
|
669
|
-
deno task
|
|
670
|
-
deno task gui:
|
|
671
|
-
deno task gui:upgrade # replaces recorded files in place and rewrites manifest
|
|
672
|
-
deno task gui:uninstall # removes recorded files and empty directories created at install
|
|
376
|
+
deno task browser # build and serve on localhost:4173
|
|
377
|
+
deno task gui:install # optional standalone local application
|
|
673
378
|
```
|
|
674
379
|
|
|
675
|
-
|
|
380
|
+
The installed launcher is `clio-coder-gui`. Linux, including WSL2, is tested;
|
|
381
|
+
native Windows launch is unavailable. Prebuilt GUI downloads are not distributed.
|
|
382
|
+
The GUI keeps its own recent-project list; Clio owns sessions and authentication.
|
|
676
383
|
|
|
677
|
-
|
|
384
|
+
See the [GUI guide](apps/workbench/README.md) for installation, state locations,
|
|
385
|
+
updates, and removal. There is no `clio-coder workbench` subcommand.
|
|
678
386
|
|
|
679
|
-
|
|
680
|
-
- Desktop entry: `$XDG_DATA_HOME/applications/clio-coder-gui.desktop`
|
|
681
|
-
- Application icon: `$XDG_DATA_HOME/clio-coder-gui/clio-coder-gui.png`
|
|
682
|
-
- Manifest: `$XDG_DATA_HOME/clio-coder-gui/install.json`
|
|
387
|
+
</details>
|
|
683
388
|
|
|
684
|
-
|
|
685
|
-
|
|
686
|
-
desktop launcher. The Clio CLI must still be on `PATH` for conversations.
|
|
389
|
+
<details>
|
|
390
|
+
<summary><strong>Read-only trace viewer</strong></summary>
|
|
687
391
|
|
|
688
|
-
|
|
689
|
-
|
|
690
|
-
- **Platform support:** Linux (including WSL2) is tested. Native Windows launch is
|
|
691
|
-
unavailable (`defaultClioLauncher` in `main.ts` refuses it); `desktop:windows` is an
|
|
692
|
-
unverified experimental webview build.
|
|
693
|
-
- **Network change resilience:** Transient `net::ERR_NETWORK_CHANGED` errors when
|
|
694
|
-
WSL2 or VPN interfaces cycle are recovered automatically via 3-stage bootstrap retries.
|
|
695
|
-
- **Release distribution:** Pre-packaged GUI binaries are not distributed as GitHub
|
|
696
|
-
release downloads; compile locally using `deno task gui:install`.
|
|
697
|
-
|
|
698
|
-
See [apps/workbench/README.md](apps/workbench/README.md) and
|
|
699
|
-
[apps/workbench/DESIGN_SYSTEM.md](apps/workbench/DESIGN_SYSTEM.md).
|
|
700
|
-
|
|
701
|
-
## Trace viewer (source-only)
|
|
702
|
-
|
|
703
|
-
A small, local-only, read-only web view over Clio's durable dispatch trace
|
|
704
|
-
mirror (`trace.sqlite`) and provenance sidecars (`receipts/<runId>.json`,
|
|
705
|
-
`evidence-index.json`).
|
|
706
|
-
|
|
707
|
-
`apps/` is intentionally absent from the published npm package, so the trace
|
|
708
|
-
viewer is available **only from a source checkout**.
|
|
709
|
-
|
|
710
|
-
The CLI command defaults to an ephemeral free port (port 0), while direct server
|
|
711
|
-
launch defaults to port 4600:
|
|
392
|
+
From a source checkout:
|
|
712
393
|
|
|
713
394
|
```bash
|
|
714
|
-
# Start viewer on port 4600 via the CLI:
|
|
715
395
|
clio-coder trace ui --port 4600
|
|
716
|
-
|
|
717
|
-
# Or start directly with pnpm:
|
|
718
|
-
pnpm run trace:ui --db /path/to/trace.sqlite --port 4600
|
|
719
396
|
```
|
|
720
397
|
|
|
721
|
-
The
|
|
722
|
-
|
|
723
|
-
trace
|
|
398
|
+
The viewer binds to `127.0.0.1` and reads the local trace database without
|
|
399
|
+
modifying it. The npm package does not include this app. See the
|
|
400
|
+
[trace viewer guide](apps/trace-viewer/README.md).
|
|
724
401
|
|
|
725
|
-
|
|
726
|
-
[Trace Store Architecture](docs/architecture/trace-store.md).
|
|
402
|
+
</details>
|
|
727
403
|
|
|
728
|
-
##
|
|
404
|
+
## Help and documentation
|
|
729
405
|
|
|
730
|
-
|
|
731
|
-
|
|
732
|
-
|
|
733
|
-
The exact release history belongs in the [CHANGELOG](CHANGELOG.md).
|
|
406
|
+
If setup fails, start with `clio-coder doctor` and
|
|
407
|
+
`clio-coder configure --section diagnostics`. To discover commands, use
|
|
408
|
+
`clio-coder --help`; `--help --all` includes developer tools.
|
|
734
409
|
|
|
735
|
-
|
|
736
|
-
|
|
737
|
-
|
|
738
|
-
|
|
410
|
+
| Looking for… | Start here |
|
|
411
|
+
| --- | --- |
|
|
412
|
+
| Setup, settings, and connections | [Configuration guide](docs/guide/configuration-and-targets.md) |
|
|
413
|
+
| Commands and keyboard shortcuts | [Commands and Modes](docs/guide/commands-and-modes.md) |
|
|
414
|
+
| Installation or connection problems | [Troubleshooting](docs/guide/troubleshooting.md) |
|
|
415
|
+
| Scientific checks and measurements | [Scientific Validation](docs/process/scientific-validation.md) |
|
|
416
|
+
| Architecture and advanced workflows | [Documentation index](docs/README.md) |
|
|
739
417
|
|
|
740
|
-
|
|
418
|
+
When opening an issue, include Clio and Node versions, the relevant doctor
|
|
419
|
+
output, and steps to reproduce. Remove credentials and sensitive project data.
|
|
741
420
|
|
|
742
|
-
|
|
743
|
-
| --- | --- |
|
|
744
|
-
| `clio-coder: command not found` | Run `command -v clio-coder`; make sure your package manager's global bin or `${CLIO_CODER_BIN_DIR:-$HOME/.local/bin}` is on `PATH`, then run `hash -r` (Bash) or `rehash` (Zsh). |
|
|
745
|
-
| GUI launcher not found | Run `clio-coder-gui` (or `cd apps/workbench && deno task browser`). There is no `clio-coder workbench` subcommand. |
|
|
746
|
-
| Trace viewer unavailable | The trace viewer is source-only. Run `clio-coder trace ui` or `pnpm run trace:ui` from a source checkout. |
|
|
747
|
-
| No usable model target | Run `clio-coder configure`, then `clio-coder targets --probe`. |
|
|
748
|
-
| A local server does not answer | Verify the server process, URL, advertised model id, and `clio-coder targets` health row. |
|
|
749
|
-
| Cloud or subscription authentication fails | Run `clio-coder auth status <target-or-runtime>` and repeat the appropriate login flow. |
|
|
750
|
-
| A fleet node receives no work | Run `clio-coder doctor`; inspect node preflight, shared path, target reachability, and drain status. |
|
|
751
|
-
| Local state appears damaged | Run read-only `clio-coder doctor` first; use `doctor --fix` only for the repairs it offers. |
|
|
752
|
-
|
|
753
|
-
When reporting a problem, include `clio-coder --version`, `node --version`,
|
|
754
|
-
`clio-coder doctor`, and `clio-coder targets`. Redact credentials, private
|
|
755
|
-
prompts, proprietary code, and sensitive logs. The
|
|
756
|
-
[Troubleshooting Guide](docs/guide/troubleshooting.md) is keyed to user-facing errors.
|
|
757
|
-
|
|
758
|
-
## For agents working on Clio Coder
|
|
759
|
-
|
|
760
|
-
If you are an AI agent entering this repository, orient narrowly before making
|
|
761
|
-
changes:
|
|
762
|
-
|
|
763
|
-
1. Read [CONTRIBUTING.md](CONTRIBUTING.md), then the guide for the subsystem you
|
|
764
|
-
will touch in the [documentation index](docs/README.md). If a local
|
|
765
|
-
`CLIO-CODER.md` exists, read it for checkout-specific instructions.
|
|
766
|
-
2. Start at the owning entry point. The main source roots are `src/cli/`,
|
|
767
|
-
`src/core/`, `src/domains/`, `src/engine/`, `src/entry/`,
|
|
768
|
-
`src/interactive/`, `src/tools/`, and `src/worker/`.
|
|
769
|
-
3. Use `rg` and focused reads. Do not infer current behavior from release notes
|
|
770
|
-
or a similarly named legacy path.
|
|
771
|
-
4. Treat source, schema validation, and contract tests as authoritative when a
|
|
772
|
-
document disagrees. Fix the document in the same change.
|
|
773
|
-
5. Run the narrowest relevant test while iterating, then the repository gate
|
|
774
|
-
before handing work back.
|
|
775
|
-
|
|
776
|
-
Useful orientation:
|
|
777
|
-
|
|
778
|
-
| Concern | Start here |
|
|
779
|
-
| --- | --- |
|
|
780
|
-
| Source layout and domain boundaries | [Architecture](docs/architecture/architecture.md) |
|
|
781
|
-
| CLI and slash-command contracts | [Commands and Modes](docs/guide/commands-and-modes.md) |
|
|
782
|
-
| Tool schemas and bounded results | [Tool Usage](docs/guide/tool-usage.md) |
|
|
783
|
-
| Dispatch admission and worker mechanics | [Fleet Dispatch](docs/guide/fleet-dispatch.md), [Worker Dispatch](docs/architecture/worker-dispatch-mechanics.md) |
|
|
784
|
-
| Configuration schema and target resolution | [Configuration and Targets](docs/guide/configuration-and-targets.md) |
|
|
785
|
-
| Sessions, context, and persistence | [Session Lifecycle](docs/architecture/session-lifecycle.md), [Context Engine](docs/architecture/context-engine.md) |
|
|
786
|
-
| Safety and evidence | [Safety Model](docs/architecture/safety-model.md), [Observability](docs/architecture/observability.md) |
|
|
421
|
+
## Contributing
|
|
787
422
|
|
|
788
|
-
|
|
423
|
+
Experiences from real research projects are especially useful: a difficult
|
|
424
|
+
build, an unreliable model connection, or a workflow that needs better support.
|
|
425
|
+
Read [CONTRIBUTING.md](CONTRIBUTING.md) for setup and review expectations.
|
|
426
|
+
Report security issues through [SECURITY.md](SECURITY.md).
|
|
789
427
|
|
|
790
|
-
|
|
791
|
-
|
|
792
|
-
architecture boundaries, commit conventions, and review expectations. Report
|
|
793
|
-
security issues through [SECURITY.md](SECURITY.md), not a public issue.
|
|
428
|
+
<details>
|
|
429
|
+
<summary><strong>Developer commands and guidance for coding agents</strong></summary>
|
|
794
430
|
|
|
795
431
|
```bash
|
|
796
432
|
corepack enable pnpm
|
|
797
433
|
pnpm install --frozen-lockfile
|
|
798
434
|
pnpm run dev # rebuild on source changes
|
|
799
|
-
pnpm run ci # types,
|
|
800
|
-
pnpm run ci:release #
|
|
435
|
+
pnpm run ci # types, lint, build, tests
|
|
436
|
+
pnpm run ci:release # includes package and distribution checks
|
|
801
437
|
```
|
|
802
438
|
|
|
803
|
-
|
|
804
|
-
|
|
805
|
-
|
|
806
|
-
|
|
807
|
-
|
|
808
|
-
|
|
809
|
-
|
|
810
|
-
|
|
811
|
-
|
|
812
|
-
|
|
813
|
-
|
|
814
|
-
|
|
815
|
-
|
|
816
|
-
|
|
817
|
-
|
|
818
|
-
|
|
819
|
-
|
|
820
|
-
the
|
|
821
|
-
|
|
822
|
-
|
|
823
|
-
|
|
824
|
-
|
|
825
|
-
|
|
826
|
-
|
|
827
|
-
|
|
828
|
-
|
|
829
|
-
|
|
830
|
-
|
|
831
|
-
|
|
832
|
-
|
|
833
|
-
|
|
834
|
-
|
|
835
|
-
|
|
836
|
-
|
|
837
|
-
|
|
838
|
-
|
|
839
|
-
|
|
840
|
-
|
|
841
|
-
|
|
842
|
-
|
|
843
|
-
|
|
844
|
-
|
|
845
|
-
|
|
846
|
-
|
|
847
|
-
|
|
848
|
-
[clio-core](https://github.com/iowarp/clio-core)
|
|
849
|
-
|
|
850
|
-
[Model Context Protocol](https://modelcontextprotocol.io) servers for
|
|
851
|
-
scientific data and computing tools.
|
|
852
|
-
|
|
853
|
-
It builds on the **Pi Agent Framework** from
|
|
854
|
-
[Earendil Works](https://github.com/earendil-works), the **Anthropic Claude
|
|
855
|
-
Agent SDK** for supported Claude worker runs, the **Agent Client Protocol** for
|
|
856
|
-
editor frontends, and **Globus Auth** for ALCF inference gateways. The repository
|
|
857
|
-
also ships a local eval engine and reviewable reference suites under `evals/`
|
|
858
|
-
for reproducible, operator-run measurements.
|
|
439
|
+
Local imports end in `.js`; tests use `node:test`. Run a focused test with
|
|
440
|
+
`pnpm run test:file tests/contracts/<name>.test.ts`. Model-dependent evaluations
|
|
441
|
+
under `evals/` are explicit operator runs, separate from deterministic CI.
|
|
442
|
+
|
|
443
|
+
For agents entering this repository: read `CONTRIBUTING.md`, the local
|
|
444
|
+
`CLIO-CODER.md` when present, and the owning subsystem's documentation. Use
|
|
445
|
+
focused source reads; treat the schema and behavior contracts as authoritative.
|
|
446
|
+
Update conflicting documentation with the code and run the appropriate checks.
|
|
447
|
+
|
|
448
|
+
Start with [Architecture](docs/architecture/architecture.md),
|
|
449
|
+
[Tool Usage](docs/guide/tool-usage.md), and
|
|
450
|
+
[Worker Dispatch](docs/architecture/worker-dispatch-mechanics.md).
|
|
451
|
+
|
|
452
|
+
</details>
|
|
453
|
+
|
|
454
|
+
## Acknowledgements
|
|
455
|
+
|
|
456
|
+
Clio Coder is developed by the [Gnosis Research Center](https://grc.iit.edu) at
|
|
457
|
+
[Illinois Tech](https://www.iit.edu), in collaboration with the University of
|
|
458
|
+
Utah, as part of [IOWarp](https://iowarp.ai). The IOWarp CLIO architecture is
|
|
459
|
+
supported by the National Science Foundation under
|
|
460
|
+
[Award #2411318](https://www.nsf.gov/awardsearch/showAward?AWD_ID=2411318),
|
|
461
|
+
2024–2029. Principal Investigator: Dr. Xian-He Sun; Co-Principal Investigators:
|
|
462
|
+
Dr. Anthony Kougkas, Dr. Jake Hochhalter, and Dr. Vivek Srikumar.
|
|
463
|
+
|
|
464
|
+
This experiment builds on generous work across the open-source and AI communities:
|
|
465
|
+
|
|
466
|
+
- **Agent foundations:** [Earendil Works' Pi framework](https://github.com/earendil-works/pi),
|
|
467
|
+
[Anthropic's Claude Agent SDK](https://github.com/anthropics/claude-agent-sdk-typescript),
|
|
468
|
+
and the [Agent Client Protocol](https://agentclientprotocol.com).
|
|
469
|
+
- **Models and infrastructure:** OpenAI, Anthropic, Google, and the other model
|
|
470
|
+
providers; Ollama, LM Studio, llama.cpp, vLLM, SGLang, Lemonade, and LiteLLM;
|
|
471
|
+
and Argonne ALCF and Globus for institutional inference access.
|
|
472
|
+
- **The software underneath:** Node.js, Microsoft's TypeScript and node-pty,
|
|
473
|
+
Tree-sitter, Meta's React, Deno, Vite, esbuild, Biome, and the maintainers of
|
|
474
|
+
our parsing, rendering, and image libraries.
|
|
475
|
+
- **Optional terminal tools:** [Herdr](https://herdr.dev),
|
|
476
|
+
[Yazi](https://yazi-rs.github.io), and [croc](https://github.com/schollz/croc).
|
|
477
|
+
|
|
478
|
+
Clio uses some of these directly and connects to others through optional
|
|
479
|
+
integrations. Exact packages are recorded in [package.json](package.json) and
|
|
480
|
+
the workspace manifests; component notices are in [NOTICE](NOTICE).
|
|
481
|
+
|
|
482
|
+
CLIO means **Context Layer for Input/Output**; the name also recalls the Greek
|
|
483
|
+
muse of history. Explore the wider ecosystem:
|
|
484
|
+
[clio-core](https://github.com/iowarp/clio-core) for data and context storage,
|
|
485
|
+
and [clio-kit](https://github.com/iowarp/clio-kit) for scientific tool servers.
|
|
859
486
|
|
|
860
487
|
---
|
|
861
488
|
|
|
862
489
|
<p align="center">
|
|
863
|
-
|
|
490
|
+
Apache-2.0 · <a href="LICENSE">License</a> · <a href="NOTICE">Notices</a><br />
|
|
864
491
|
<sub>Built for the people who maintain the code that science runs on.</sub>
|
|
865
492
|
</p>
|