@macintacos/caret 0.3.0 → 0.4.1
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/.claude-plugin/plugin.json +1 -1
- package/README.md +49 -14
- package/commands/discovery.md +1 -1
- package/dist/cli.js +1600 -200
- package/opencode/caret.plugin.ts +238 -14
- package/opencode/index.ts +8 -0
- package/package.json +10 -2
- package/ui/dist/assets/{angular-html-B6NJ8Crx.js → angular-html-kKPIob-B.js} +1 -1
- package/ui/dist/assets/{angular-ts-FdEJue4l.js → angular-ts-CKjP4O1R.js} +1 -1
- package/ui/dist/assets/{apl-8jCzQ5pt.js → apl-DCRQgCPD.js} +1 -1
- package/ui/dist/assets/{astro-D6Uv3Zd6.js → astro-BYbWYON5.js} +1 -1
- package/ui/dist/assets/{blade-DdLBtQgs.js → blade-CwhP_dxJ.js} +1 -1
- package/ui/dist/assets/{c-BtgVJzRT.js → c-CJEVusFw.js} +1 -1
- package/ui/dist/assets/{cobol-BOF3ihbS.js → cobol-DIBOqviT.js} +1 -1
- package/ui/dist/assets/{coffee-Br1deUOy.js → coffee-BS7TY60J.js} +1 -1
- package/ui/dist/assets/{cpp-BuRF7xA8.js → cpp-D1DVYlIO.js} +1 -1
- package/ui/dist/assets/{crystal-C2zE7OWx.js → crystal-1wNBwJ9X.js} +1 -1
- package/ui/dist/assets/{css-iBwOFG5O.js → css-DcRg7BqA.js} +1 -1
- package/ui/dist/assets/{dist-CtqCYfGw.js → dist-BPvuZVb2.js} +1 -1
- package/ui/dist/assets/{dist-C4FPvSXr.js → dist-BeSPrXBn.js} +1 -1
- package/ui/dist/assets/{dist-DIdA1vYB.js → dist-Bm-_E_MU.js} +1 -1
- package/ui/dist/assets/{dist-jmyqwp8P.js → dist-Buh6GXb2.js} +1 -1
- package/ui/dist/assets/{dist--moZHrIw.js → dist-C0x7GorT.js} +1 -1
- package/ui/dist/assets/{dist-Dm7ikdu5.js → dist-C2049AtS.js} +1 -1
- package/ui/dist/assets/{dist-zkfAcw6C.js → dist-C7ysmu-x.js} +1 -1
- package/ui/dist/assets/{dist-D2IYj7rL.js → dist-CA76eI1h.js} +1 -1
- package/ui/dist/assets/{dist-DhFSo_KF.js → dist-CZ-hU0oG.js} +1 -1
- package/ui/dist/assets/{dist-Diqv5yoL.js → dist-Cyz1Y8uV.js} +1 -1
- package/ui/dist/assets/{dist-DheG7L5T.js → dist-CzDZ2KMv.js} +1 -1
- package/ui/dist/assets/{dist-DXeIzOJW.js → dist-DBvtZoff.js} +1 -1
- package/ui/dist/assets/{dist-CDXacocg.js → dist-DNG5YE4w.js} +1 -1
- package/ui/dist/assets/{dist-DvWv2GjQ.js → dist-DPr7mnLy.js} +1 -1
- package/ui/dist/assets/{dist-DSFoRH4B.js → dist-Dhe__fm5.js} +1 -1
- package/ui/dist/assets/{dist-D0u8lgi2.js → dist-afCEYO1j.js} +1 -1
- package/ui/dist/assets/{dist-CsIQFmL2.js → dist-fAkxRpOI.js} +1 -1
- package/ui/dist/assets/{edge-C8C1WH_b.js → edge-DhG5RI3d.js} +1 -1
- package/ui/dist/assets/{elixir-ChioPNrw.js → elixir-k8JKnHNU.js} +1 -1
- package/ui/dist/assets/{elm-DrMVy3GL.js → elm-BCt58sPl.js} +1 -1
- package/ui/dist/assets/{erb-B3LvCl6V.js → erb-gEaFK19o.js} +1 -1
- package/ui/dist/assets/{git-rebase-Bv1Z90mV.js → git-rebase-PGNnuu_q.js} +1 -1
- package/ui/dist/assets/{glimmer-js-_Cj2ZxqT.js → glimmer-js-BShMa8kS.js} +1 -1
- package/ui/dist/assets/{glimmer-ts-eeir-ofz.js → glimmer-ts-BBjvNufU.js} +1 -1
- package/ui/dist/assets/{glsl-Zcj4mBmc.js → glsl-CVu5XUh6.js} +1 -1
- package/ui/dist/assets/{graphql-DcI0CImY.js → graphql-CpSUkXDO.js} +1 -1
- package/ui/dist/assets/{hack-CRMO6OEY.js → hack-vYYr_EuM.js} +1 -1
- package/ui/dist/assets/{haml-vpaJ2U9N.js → haml-aiyqEFS_.js} +1 -1
- package/ui/dist/assets/{handlebars-BmRnoKX5.js → handlebars-vKdd7ZE6.js} +1 -1
- package/ui/dist/assets/{html-CWopqLKh.js → html-BSDB9v3Y.js} +1 -1
- package/ui/dist/assets/{html-derivative-kjil5-1g.js → html-derivative-V8cBpxuT.js} +1 -1
- package/ui/dist/assets/{http-BsiD1_wo.js → http-DXSNVmLc.js} +1 -1
- package/ui/dist/assets/{hurl-BSOSzca8.js → hurl-eKV70JUb.js} +1 -1
- package/ui/dist/assets/{index-anQLM8ZA.js → index-C3YoPLgV.js} +4 -4
- package/ui/dist/assets/{java-B3dX7M_O.js → java-DGolWD2l.js} +1 -1
- package/ui/dist/assets/{javascript-FM1qUZzw.js → javascript-DcKrb1R6.js} +1 -1
- package/ui/dist/assets/{jinja-DVVPq-Qq.js → jinja-O0MduF1V.js} +1 -1
- package/ui/dist/assets/{jison-DZjXlKnT.js → jison-BGBc5HtG.js} +1 -1
- package/ui/dist/assets/{json-psWWRfU7.js → json-B-Q47BuG.js} +1 -1
- package/ui/dist/assets/{jsx-Bv0NBlC9.js → jsx-B__N5PZx.js} +1 -1
- package/ui/dist/assets/{julia-DRPZCNs5.js → julia-BfiIt3AD.js} +1 -1
- package/ui/dist/assets/{just-CznON7Md.js → just-CN940-eY.js} +1 -1
- package/ui/dist/assets/{latex-99tFYwaR.js → latex-wUKEeqEd.js} +1 -1
- package/ui/dist/assets/{liquid-8z3tzRYn.js → liquid-D2cnd1Ez.js} +1 -1
- package/ui/dist/assets/{lua-BZoKCS17.js → lua-BQiIdljT.js} +1 -1
- package/ui/dist/assets/{marko-BU9z-RZr.js → marko-BCqypbre.js} +1 -1
- package/ui/dist/assets/{mdc-C38yLzkY.js → mdc-105-eiCZ.js} +1 -1
- package/ui/dist/assets/{nginx-UMVInepI.js → nginx-C5dkaLo6.js} +1 -1
- package/ui/dist/assets/{nim-Du4jXclQ.js → nim-RJQN31Xa.js} +1 -1
- package/ui/dist/assets/{perl-CoEbwzPf.js → perl-DZkWjug_.js} +1 -1
- package/ui/dist/assets/{php-ubTDGUam.js → php-OoKYDxlw.js} +1 -1
- package/ui/dist/assets/{pug-Bmsmvvm7.js → pug-CDXuXfau.js} +1 -1
- package/ui/dist/assets/{qml-YXj-z032.js → qml-BSj8AX1e.js} +1 -1
- package/ui/dist/assets/{r-BNkIpWO8.js → r-DlO747T6.js} +1 -1
- package/ui/dist/assets/{razor-ZM--hAhl.js → razor-D1gVuaXL.js} +1 -1
- package/ui/dist/assets/{regexp-CHr2m78T.js → regexp-CGVqhulu.js} +1 -1
- package/ui/dist/assets/{rst-Xx0XAo8H.js → rst-DtURuW7a.js} +1 -1
- package/ui/dist/assets/{ruby-BWgyGqGH.js → ruby-Bc3kUlvr.js} +1 -1
- package/ui/dist/assets/{sas-CwTmTlh0.js → sas-CFQgZChj.js} +1 -1
- package/ui/dist/assets/{scss-DNgS20lR.js → scss-B8cq7hhb.js} +1 -1
- package/ui/dist/assets/{shellscript-Dkezxj03.js → shellscript-C_GHS-ym.js} +1 -1
- package/ui/dist/assets/{shellsession-D6yCCjOL.js → shellsession-CTplGpC8.js} +1 -1
- package/ui/dist/assets/{soy-lzhm7a9Y.js → soy-BgD_ErAN.js} +1 -1
- package/ui/dist/assets/{sql-Yo8AWGPM.js → sql-BnGnr4ii.js} +1 -1
- package/ui/dist/assets/{stata-D62k9gHq.js → stata-qCQsVpGc.js} +1 -1
- package/ui/dist/assets/{surrealql-qp-qEg-3.js → surrealql-BqH_LSaF.js} +1 -1
- package/ui/dist/assets/{svelte-DLztoC2n.js → svelte-Bu1vTtJQ.js} +1 -1
- package/ui/dist/assets/{templ-Cu6WsZcl.js → templ-B5jQzs9l.js} +1 -1
- package/ui/dist/assets/{tex-CqZU9zkk.js → tex-BJ-wZPSn.js} +1 -1
- package/ui/dist/assets/{ts-tags-ClqaCWh2.js → ts-tags-DuLm-TvJ.js} +1 -1
- package/ui/dist/assets/{tsx-Cj58ow-S.js → tsx-BPiBkGlY.js} +1 -1
- package/ui/dist/assets/{twig-CgaKnAdg.js → twig-CdQnHxAS.js} +1 -1
- package/ui/dist/assets/{typescript-CKElJ_dH.js → typescript-Dp_zdoqe.js} +1 -1
- package/ui/dist/assets/{vue-DtckUkhv.js → vue-BmKvlxSZ.js} +1 -1
- package/ui/dist/assets/{vue-html-Cqq7SmCi.js → vue-html-CizabNef.js} +1 -1
- package/ui/dist/assets/{vue-vine-Dp4BXiQa.js → vue-vine-JH1Msnx4.js} +1 -1
- package/ui/dist/assets/{xml-C3UNSSfc.js → xml-DW7DdZow.js} +1 -1
- package/ui/dist/assets/{xsl-BL_LCJsy.js → xsl-6zDkD8bR.js} +1 -1
- package/ui/dist/assets/{yaml-CD_CHV62.js → yaml-W1qZ5vOg.js} +1 -1
- package/ui/dist/index.html +1 -1
package/README.md
CHANGED
|
@@ -22,8 +22,24 @@ _Review-UI screenshots coming soon._
|
|
|
22
22
|
|
|
23
23
|
## Install
|
|
24
24
|
|
|
25
|
-
caret needs [`bun`](https://bun.sh) on your `PATH` — it runs from a `bun` bundle
|
|
26
|
-
|
|
25
|
+
caret needs [`bun`](https://bun.sh) on your `PATH` — it runs from a `bun` bundle.
|
|
26
|
+
|
|
27
|
+
The quickest path is the one-shot installer. It registers the _published_ caret with
|
|
28
|
+
whichever agents you have — [Claude Code](https://claude.com/claude-code) and/or
|
|
29
|
+
[OpenCode](https://opencode.ai) — installing prebuilt artifacts, with no `git clone` and
|
|
30
|
+
no compile step:
|
|
31
|
+
|
|
32
|
+
```sh
|
|
33
|
+
curl -fsSL https://raw.githubusercontent.com/macintacos/caret/trunk/scripts/install.sh | bash
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
It detects which agents are present and installs into each (into both when both are
|
|
37
|
+
there). Set `CARET_AGENTS=claude` or `CARET_AGENTS=claude,opencode` to choose
|
|
38
|
+
non-interactively, or `CARET_DRY_RUN=1` to preview the exact commands without changing
|
|
39
|
+
anything. Restart the agent afterward, then try `/caret:demo`.
|
|
40
|
+
|
|
41
|
+
Prefer to run the steps yourself? The per-agent instructions below are exactly what the
|
|
42
|
+
installer automates.
|
|
27
43
|
|
|
28
44
|
### Claude Code
|
|
29
45
|
|
|
@@ -52,22 +68,41 @@ claude plugin marketplace remove caret
|
|
|
52
68
|
|
|
53
69
|
### OpenCode
|
|
54
70
|
|
|
55
|
-
caret
|
|
56
|
-
|
|
57
|
-
|
|
71
|
+
caret installs into [OpenCode](https://opencode.ai) as a first-class
|
|
72
|
+
[plugin](https://opencode.ai/docs/plugins/): add its package to your OpenCode `plugin`
|
|
73
|
+
array and restart OpenCode once.
|
|
74
|
+
|
|
75
|
+
```jsonc
|
|
76
|
+
// ~/.config/opencode/opencode.json
|
|
77
|
+
{ "plugin": ["@macintacos/caret"] }
|
|
78
|
+
```
|
|
79
|
+
|
|
80
|
+
On its next start OpenCode installs `@macintacos/caret` (and its one dependency) into its
|
|
81
|
+
own cache and loads it — no separate caret install, though it still needs
|
|
82
|
+
[`bun`](https://bun.sh) on your `PATH`. From then on, when OpenCode's Plan agent presents
|
|
83
|
+
a plan, caret opens it for review just as it does for Claude Code.
|
|
84
|
+
|
|
85
|
+
Want the `/caret:demo`, `/caret:discovery`, and `/caret:debug` slash commands too — or
|
|
86
|
+
prefer not to hand-edit the config? Run the published package's installer, which adds the
|
|
87
|
+
array entry and drops the command files for you:
|
|
58
88
|
|
|
59
89
|
```sh
|
|
60
|
-
|
|
61
|
-
| CARET_AGENTS=opencode bash
|
|
90
|
+
bunx --no-cache @macintacos/caret@latest install --target opencode
|
|
62
91
|
```
|
|
63
92
|
|
|
64
|
-
The installer
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
**Update
|
|
70
|
-
|
|
93
|
+
The [one-shot installer](#install) above does the same as part of its run (and its
|
|
94
|
+
`CARET_AGENTS=opencode,claude` covers both agents at once). If you already have the caret
|
|
95
|
+
binary on your `PATH` — from `npm i -g @macintacos/caret`, say —
|
|
96
|
+
`caret install --target opencode` works too.
|
|
97
|
+
|
|
98
|
+
**Update**: caret checks its
|
|
99
|
+
[latest release](https://github.com/macintacos/caret/releases) at OpenCode startup and
|
|
100
|
+
toasts you when a newer version is available. To take it, delete OpenCode's cached copy of
|
|
101
|
+
caret and restart — `rm -rf ~/.cache/opencode/node_modules/@macintacos/caret` makes
|
|
102
|
+
OpenCode reinstall the latest on its next start. (Prefer to control the version yourself?
|
|
103
|
+
Pin it in the array — `"@macintacos/caret@<version>"` — and bump that when you want to
|
|
104
|
+
move.) **Uninstall**: remove the array entry, or run
|
|
105
|
+
`bunx --no-cache @macintacos/caret@latest install --target opencode --uninstall`. See
|
|
71
106
|
[`doc/ADVANCED.md`](doc/ADVANCED.md#the-opencode-adapter) for how the integration works.
|
|
72
107
|
|
|
73
108
|
## Using caret
|
package/commands/discovery.md
CHANGED
|
@@ -32,4 +32,4 @@ rather than treating it as a failure of this command.
|
|
|
32
32
|
If the command exits non-zero, no report could be produced at all: present the exit code
|
|
33
33
|
and stderr instead, and suggest `/caret:debug` for log-side diagnosis. If the binary
|
|
34
34
|
itself is missing (a source checkout that has never been built), say so and point at
|
|
35
|
-
`
|
|
35
|
+
`mise run build` (or `mise run build --install`).
|