kith-coord 0.1.5 → 0.1.7

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 CHANGED
@@ -1,5 +1,20 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.1.7 — 2026-10-24
4
+
5
+ - Retain the bundled setup runtime outside temporary npx caches, verify MCP discovery, and preserve existing client settings, custom launchers and original-byte recovery backups. Clarify actual tasks, claims, resource waits and verification results in the read-only coordination view.
6
+ - Serialize MCP text replies as lossless compact JSON, retaining structured data, literal command output, warnings, capabilities and retry/recovery fields. No summarizer, extra calls or dependencies.
7
+ - Compact contract metadata without inferring read relevance from write scopes. Preserve all breaking contracts and linked exports, retain per-consumer alert relationships and lock lease records, and expose full history with optional `includeHistory` (protocol 1.5). Ordinary preview omissions are explicit and point to the existing full-registry call.
8
+ - Validate repository, branch, ownership, cleanliness and base before reusing a task worktree. Roll back queue/claim mutations when handoff fails; never remove partial or unfinished directories.
9
+ - Bound advisory cross-repository inspection, require tracked files in a distinct Git repository, omit source initializers, resolve concrete wildcard imports, and report partial/unavailable observations without failing successful claims. Unsupported inherited configuration and re-exports defer to normal project verification.
10
+ - Reject stale workspace scans, generate task prompts for selected Git checkouts, and retain only user-selected recent workspaces. Remove personal workspace defaults and automatic home-directory crawling. No new dependency or storage migration.
11
+
12
+ ## 0.1.6 — 2026-10-23
13
+
14
+ - Add optional MCP operation keys with a capability-bound durable result journal in the existing database. Lost replies replay without repeating mutations; concurrent duplicates report in-progress, and interrupted/unrecorded outcomes refuse automatic re-execution. Historical replies never revive expired/completed sessions or authorize a replacement generation.
15
+ - Add structured operational failure codes and retryability while preserving existing result fields. Distinguish claim/mutex wait contention from command deadlines, partial effects, ownership rejection and failed integration; preserve bounded command output on cancellation/timeouts.
16
+ - Advance protocol to 1.4 and storage schema to 3. Transactional journal migration retains schema-2 ownership and recovery data; interrupted upgrades and missing journal state fail safely. No new runtime dependency, service or editor configuration changes.
17
+
3
18
  ## 0.1.5 — 2026-10-22
4
19
 
5
20
  - Group read-only radar observations by checkout, distinguishing current recorded Kith leases, retained sessions, unregistered checkouts and unavailable ownership. Label counts as paths to review before integration, with full checkout/owner details and preservation guidance. Reuse the same snapshot in the optional editor view without extra status subprocesses. No ownership, recovery or cleanup behavior changes.
@@ -102,6 +117,10 @@
102
117
 
103
118
  ## Unreleased
104
119
 
120
+ - One-command setup retains a self-contained runtime outside transient npx caches, checks MCP discovery and installs marked project guidance alongside detected client configuration. Repeat/interrupted setup retains recovery material and existing custom launchers; older live project schemas require the stopped-upgrade procedure.
121
+ - Read-only menu and editor views show current recorded tasks/claims, resource waits and failed integrations with next steps. Saved work and review paths move into details; the default menu omits file timestamps. Missing/partial state stays explicit. No new coordination database, model calls or automatic cleanup.
122
+
123
+
105
124
  ### Session ownership, supervision, and client validation
106
125
 
107
126
  - Add random session capabilities, hashed storage, fixed process anchors, generation checks, and exact fencing-token checks. ID-only renewal, completion, lock release, and mutation are rejected across engines/connections.
package/README.md CHANGED
@@ -4,12 +4,13 @@
4
4
 
5
5
  <p align="center">
6
6
  <a href="https://github.com/connorhriley/kith/actions/workflows/ci.yml"><img src="https://github.com/connorhriley/kith/actions/workflows/ci.yml/badge.svg" alt="CI status"></a>
7
+ <a href="https://github.com/connorhriley/kith/actions/workflows/windows.yml"><img src="https://github.com/connorhriley/kith/actions/workflows/windows.yml/badge.svg" alt="Windows validation"></a>
7
8
  <a href="https://www.npmjs.com/package/kith-coord"><img src="https://img.shields.io/npm/v/kith-coord" alt="npm version"></a>
8
9
  <a href="LICENSE"><img src="https://img.shields.io/badge/license-MIT-22C55E" alt="MIT license"></a>
9
10
  </p>
10
11
 
11
12
  <p align="center">
12
- <a href="#quick-start">Quick start</a> · <a href="#see-it-work">Demo</a> · <a href="docs/integrations.md">Integrations</a> · <a href="docs/usage.md">CLI &amp; API</a> · <a href="CONTRIBUTING.md">Contribute</a>
13
+ <a href="#quick-start">Quick start</a> · <a href="https://marketplace.visualstudio.com/items?itemName=kith-coord.kith">VS Code</a> · <a href="https://open-vsx.org/extension/kith-coord/kith">Cursor / Open VSX</a> · <a href="#see-it-work">Demo</a> · <a href="docs/integrations.md">Integrations</a> · <a href="docs/usage.md">CLI &amp; API</a> · <a href="CONTRIBUTING.md">Contribute</a>
13
14
  </p>
14
15
 
15
16
  **Local coordination for cooperating coding agents.**
@@ -28,7 +29,7 @@ Kith gives cooperating agents shared local state: who owns a task, which files a
28
29
  | Give agents separate working files | Git worktrees with an explicit integration step |
29
30
  | Check work before integration | Your project's verification command |
30
31
  | Share local tools | Port reservations and supervised command mutexes |
31
- | See what is happening | Session/task state through `kith status` and MCP |
32
+ | See what is happening | Session/task state through CLI/MCP; optional read-only editor and worktree views |
32
33
 
33
34
  Kith fits workflows where you already launch multiple coding agents and want them to coordinate. It does not choose models, write prompts, or launch a fleet for you. Worktrees separate files; Kith adds shared ownership and resource coordination.
34
35
 
@@ -36,28 +37,50 @@ The [reliability contract](docs/reliability.md) defines ownership, verification,
36
37
 
37
38
  ## Quick start
38
39
 
39
- Requires **Git 2.38+** and **Node.js 22.13+ on 22.x or Node.js 24+**. Full workflows target macOS and Linux. Version 0.1.1 also validates native Windows MCP claims, worktrees, ports, integration and recovery; supervised mutex commands and shell hooks require macOS/Linux or WSL. See the [support evidence](docs/client-validation.md#native-windows).
40
+ Requires **Git 2.38+** and **Node.js 22.13+ on 22.x or Node.js 24+**. Full workflows target macOS and Linux. Native Windows MCP checks cover claims, worktrees, ports, integration and recovery; supervised mutex commands and shell hooks require macOS/Linux or WSL. See the [support evidence](docs/client-validation.md#native-windows).
40
41
 
41
42
  Git recording and integration require a commit identity configured for the repository (`user.name` and `user.email`). Kith does not change your global Git identity.
42
43
 
43
- Install the release:
44
+ **Upgrading to 0.1.6:** Stop existing Kith connections first. Back up stopped coordination state (including SQLite sidecars) and retain worktrees; upgrade all coordinators sharing a repository together. This release migrates storage schema 2 to 3, which older binaries refuse. Existing custom launchers are preserved; review their pinned version before reconnecting. See [recovery guidance](docs/reliability.md#recovery).
45
+
46
+ ### VS Code or Cursor
47
+
48
+ Install **Kith** (`kith-coord.kith`) from the [VS Code Marketplace](https://marketplace.visualstudio.com/items?itemName=kith-coord.kith) or [Cursor / Open VSX](https://open-vsx.org/extension/kith-coord/kith). You can also search for `kith-coord.kith` in the editor's Extensions view.
49
+
50
+ To select release **0.1.7** explicitly with an editor CLI already on your `PATH`:
44
51
 
45
52
  ```sh
46
- npm install --global kith-coord@0.1.5
53
+ code --install-extension kith-coord.kith@0.1.7
54
+ cursor --install-extension kith-coord.kith@0.1.7
47
55
  ```
48
56
 
49
- Choose the setup scope your client needs:
57
+ Use the command for your editor. A marketplace lookup can temporarily select an older version; the [extension guide](extensions/editor/README.md#install) also links the published 0.1.7 VSIX.
50
58
 
51
- - **Global desktop/CLI connection:** run `kith setup --dry-run`, then `kith setup`. Restart/reconnect the configured client. A desktop agent supplies the absolute Git `repository` on each tool call; no whole-Mac ownership database is created.
52
- - **Project configuration and agent instructions:** run the following inside the checkout. This is the default for project-scoped clients. Existing global connections need not be registered again; use `kith init --only agents` when only project guidance is needed.
59
+ Open a trusted local Git checkout and approve Kith's MCP server through the editor. The extension bundles the coordination server, detects Node, and preserves existing MCP entries, hooks and tool permissions. **No global npm install is needed.** Each agent still needs to use Kith's tools; installing the extension does not enforce claims on other writers.
60
+
61
+ Start with a scoped task:
62
+
63
+ ```text
64
+ Use Kith to begin an isolated task in this repository with a unique agent ID.
65
+ Claim only the files this task needs, edit the returned worktree, and report edits.
66
+ Run the project checks and complete through Kith with that verification command.
67
+ ```
68
+
69
+ The [extension guide](extensions/editor/README.md) covers settings and existing configurations; [recorded editor checks](docs/client-validation.md#editor-marketplaces-and-signed-in-chats) distinguish installation, native MCP registration and signed-in task results.
70
+
71
+ ### CLI and other MCP clients
72
+
73
+ One command from your Git checkout configures supported detected clients and adds project instructions:
53
74
 
54
75
  ```sh
55
- cd /path/to/your/project
56
- kith init --dry-run
57
- kith init
76
+ npx --yes --package kith-coord@0.1.7 kith setup
58
77
  ```
59
78
 
60
- Setup preserves peer configurations, hooks and permissions. A written configuration is not a confirmed connection: check Kith's server status in the client, then ask it to begin an isolated task. `kith doctor /absolute/checkout` checks global and project launcher files without starting clients or creating project state. See [client setup](docs/integrations.md#configure-detected-local-clients).
79
+ Durable setup starts with **0.1.7**. Earlier versions need a persistent global npm installation before setup. [Client setup](docs/integrations.md#configure-detected-local-clients) covers configuration scope and advanced options.
80
+
81
+ Setup retains an exact self-contained runtime outside npx's cache, checks its MCP discovery, and backs up changes before writing them. Existing custom Kith launchers, peer servers, hooks and permissions are preserved. From outside a Git checkout it configures global connections; pass a project path to add that project's guidance. Reconnect the client and approve its MCP server through the client's normal controls.
82
+
83
+ Ask your agent to do the task using Kith. The view says **Watching only** until a task is actually recorded. A configured server is not a running task. `kith setup --dry-run` previews without writes; `kith doctor /absolute/checkout` diagnoses configuration.
61
84
 
62
85
  For source installation and the disposable demo, use the pinned **pnpm 10.20.0**:
63
86
 
@@ -90,24 +113,17 @@ Two real MCP clients completed work in separate worktrees. Disposable example pa
90
113
 
91
114
  The implementation is in [examples/two-agents.mjs](examples/two-agents.mjs). This demonstrates the coordination protocol; [native-client validation](docs/client-validation.md) separately exercises installed coding clients.
92
115
 
93
- ### Connect your client
94
-
95
- After the npm quick start above, restart your coding client in that project and approve its Kith MCP connection. Generated configuration uses the installed `kith` executable; no source checkout or `pnpm link` is needed. Review and commit the generated files before asking agents to integrate work.
116
+ ### Client support
96
117
 
97
- Default setup installs MCP configuration for Claude, Codex and Cursor plus agent instructions, without adding hooks or package-manager shims. Review and commit the generated configuration before starting work; integration requires a clean target checkout. Restart your client with `kith` on its `PATH`. To select clients, use `--mcp-only --only claude,codex,agents`. Existing hooks are preserved; review warnings if they require an inherited session. See [hook setup](docs/integrations.md) if you need them.
118
+ The editor extension bundles the server and offers it through native MCP registration; no global npm install is needed. Installing an extension or writing configuration does not enforce claims on writers that do not use Kith. Existing custom Kith entries retain precedence.
98
119
 
99
120
  | Client | Setup and validation |
100
121
  | --- | --- |
101
- | Claude Code | MCP; optional edit hooks need shared session setup; recorded native CLI runs |
102
- | Codex | Project MCP configuration; recorded native CLI runs with configuration overrides |
103
- | Cursor | Native CLI workflow and fail-closed edit hooks validated; GUI discovery/trust unvalidated |
122
+ | VS Code / Cursor | One-click marketplace extension; native MCP controls retain approval and trust |
123
+ | Claude Code / Claude Desktop / Codex | Detected client configuration through `kith setup` |
104
124
  | Other MCP clients | stdio server via `kith mcp`; client-specific validation required |
105
125
 
106
- For VS Code and Cursor, the [editor extension](extensions/editor) offers a bundled MCP server and a small read-only status indicator. Install its VSIX through **Extensions → Install from VSIX**. It preserves existing MCP entries and leaves server approval and tool permissions to the editor. No global npm installation is needed; compatible Node.js is still required.
107
-
108
- Native checks are version-specific. GUI discovery and persisted project trust need separate checks. See [integration setup](docs/integrations.md), [recorded validation](docs/client-validation.md), and [session ownership](docs/sessions-and-mutexes.md) before mixing hooks, CLI commands, and MCP clients.
109
-
110
- The npm package is **`kith-coord`**, with the command name **`kith`**. For a pinned npx MCP launcher, see [registry setup](docs/integrations.md#registry-installation). The unrelated npm package `kith` is not this project.
126
+ Native evidence is version-specific. See [client validation](docs/client-validation.md), [advanced integration setup](docs/integrations.md) and [session ownership](docs/sessions-and-mutexes.md). The npm package is **`kith-coord`** and the command is **`kith`**; the unrelated npm package `kith` is not this project.
111
127
 
112
128
  ## Dev servers and shared config
113
129
 
@@ -121,6 +137,17 @@ kith lock acquire --agent worker-1 --scope package.json --wait --wait-ms 30000
121
137
 
122
138
  See [dev-server launch and waiting claims](docs/usage.md#launch-a-dev-server-on-its-allocated-port) for framework flags, session setup, cancellation, and MCP usage.
123
139
 
140
+ ## Optional read-only monitoring
141
+
142
+ ```sh
143
+ kith watch /path/to/workspace --once --json
144
+ kith menubar /path/to/workspace # macOS 12+, Intel or Apple Silicon
145
+ ```
146
+
147
+ The menu and editor lead with recorded tasks, current file claims, shared-resource waits and integrations that need inspection. A registered session without a task is shown separately. Saved checkouts and path comparisons stay in details; nothing is automatically deleted. The menu's default view omits the file-timestamp feed.
148
+
149
+ **Watching only** means no active Kith task is recorded. Shared dirty paths are files to review before integration, not a proven merge conflict. **Status unavailable** remains explicit when state cannot be inspected safely. Reads use private snapshots without renewing owners or migrating the original database. See [observation limits](docs/usage.md#optional-read-only-worktree-observations).
150
+
124
151
  ## How a task moves through Kith
125
152
 
126
153
  1. **Begin through MCP.** Call `kith_begin_work` with a unique `agentId`, explicit `scopeGlobs`, and `isolateWorktree: true`. The connection retains session ownership; no shell exports are needed for this MCP-only workflow.
package/bin/kith-menubar CHANGED
Binary file
@@ -0,0 +1,80 @@
1
+ ## undefined@undefined
2
+
3
+
4
+
5
+ ## picomatch@4.0.7
6
+ MIT
7
+ The MIT License (MIT)
8
+
9
+ Copyright (c) 2017-present, Jon Schlinkert.
10
+
11
+ Permission is hereby granted, free of charge, to any person obtaining a copy
12
+ of this software and associated documentation files (the "Software"), to deal
13
+ in the Software without restriction, including without limitation the rights
14
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
15
+ copies of the Software, and to permit persons to whom the Software is
16
+ furnished to do so, subject to the following conditions:
17
+
18
+ The above copyright notice and this permission notice shall be included in
19
+ all copies or substantial portions of the Software.
20
+
21
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
22
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
23
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
24
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
25
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
26
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
27
+ THE SOFTWARE.
28
+
29
+
30
+ ## smol-toml@1.9.1
31
+ BSD-3-Clause
32
+ Copyright (c) Squirrel Chat et al., All rights reserved.
33
+
34
+ Redistribution and use in source and binary forms, with or without
35
+ modification, are permitted provided that the following conditions are met:
36
+
37
+ 1. Redistributions of source code must retain the above copyright notice, this
38
+ list of conditions and the following disclaimer.
39
+ 2. Redistributions in binary form must reproduce the above copyright notice,
40
+ this list of conditions and the following disclaimer in the
41
+ documentation and/or other materials provided with the distribution.
42
+ 3. Neither the name of the copyright holder nor the names of its contributors
43
+ may be used to endorse or promote products derived from this software without
44
+ specific prior written permission.
45
+
46
+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
47
+ ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
48
+ WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
49
+ DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
50
+ FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
51
+ DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
52
+ SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
53
+ CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
54
+ OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
55
+ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
56
+
57
+
58
+ ## zod@3.25.76
59
+ MIT
60
+ MIT License
61
+
62
+ Copyright (c) 2025 Colin McDonnell
63
+
64
+ Permission is hereby granted, free of charge, to any person obtaining a copy
65
+ of this software and associated documentation files (the "Software"), to deal
66
+ in the Software without restriction, including without limitation the rights
67
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
68
+ copies of the Software, and to permit persons to whom the Software is
69
+ furnished to do so, subject to the following conditions:
70
+
71
+ The above copyright notice and this permission notice shall be included in all
72
+ copies or substantial portions of the Software.
73
+
74
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
75
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
76
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
77
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
78
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
79
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
80
+ SOFTWARE.