@revealui/harnesses 0.0.0-canary-20260409021642

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/LICENSE ADDED
@@ -0,0 +1,109 @@
1
+ Functional Source License, Version 1.1, MIT Future License
2
+
3
+ Abbreviation
4
+
5
+ FSL-1.1-MIT
6
+
7
+ Notice
8
+
9
+ Copyright 2025-2026 RevealUI Studio (founder@revealui.com)
10
+
11
+ Terms and Conditions
12
+
13
+ Licensor: RevealUI Studio
14
+
15
+ Licensed Work: @revealui/harnesses
16
+ The Licensed Work is copyright 2025-2026 RevealUI Studio.
17
+
18
+ Change Date: 2028-04-08
19
+
20
+ Change License: MIT
21
+
22
+ For information about alternative licensing arrangements for the Licensed Work,
23
+ please contact: founder@revealui.com
24
+
25
+ License text below is the Functional Source License, Version 1.1, MIT Future
26
+ License, as published at https://fsl.software/FSL-1.1-MIT.template.md
27
+
28
+ ---
29
+
30
+ ## Terms and Conditions
31
+
32
+ ### Acceptance
33
+
34
+ In order to get any license under these terms, you must agree to them as
35
+ both strict obligations and conditions to all your licenses.
36
+
37
+ ### Copyright License
38
+
39
+ The licensor grants you a non-exclusive, royalty-free, worldwide,
40
+ non-sublicensable, non-transferable license to use, copy, distribute, make
41
+ available, and prepare derivative works of the licensed work, in each case
42
+ subject to the limitations and conditions below.
43
+
44
+ ### Limitations
45
+
46
+ You may not make the functionality of the licensed work or a modified
47
+ version available to third parties as a service, or distribute the
48
+ licensed work or a modified version in a way that makes the functionality
49
+ of the software available to third parties. Making the functionality of
50
+ the licensed work available to third parties includes, without limitation,
51
+ enabling third parties to interact with the functionality of the licensed
52
+ work remotely through a computer network, offering a service the value of
53
+ which entirely or primarily derives from the value of the licensed work,
54
+ or offering a service that accomplishes for users the primary purpose of
55
+ the licensed work or a modified version.
56
+
57
+ ### Patents
58
+
59
+ The licensor grants you a license, under any patent claims the licensor
60
+ can license, or becomes able to license, to make, have made, use, sell,
61
+ offer for sale, import and have imported the licensed work, in each case
62
+ subject to the limitations and conditions in this license. This license
63
+ does not cover any patent claims that you cause to be infringed by
64
+ modifications or additions to the licensed work. If you or your company
65
+ make any written claim that the licensed work infringes or contributes to
66
+ infringement of any patent, your patent license for the licensed work
67
+ granted under these terms ends immediately. If your company makes such a
68
+ claim, your patent license ends immediately for work on behalf of your
69
+ company.
70
+
71
+ ### Fair Use
72
+
73
+ This license is not intended to limit any right of fair use, fair
74
+ dealing, or other applicable copyright exception or limitation.
75
+
76
+ ### No Other Rights
77
+
78
+ These terms do not allow you to sublicense or transfer any of your
79
+ licenses to anyone else, or prevent the licensor from granting licenses
80
+ to anyone else. These terms do not imply any other licenses.
81
+
82
+ ### Termination
83
+
84
+ If you use the licensed work in violation of these terms, such use is
85
+ not licensed, and your licenses may be revoked if you do not cure the
86
+ violation.
87
+
88
+ The licensor may also revoke your licenses if you fail to comply with
89
+ these terms.
90
+
91
+ ### No Liability
92
+
93
+ ***As far as the law allows, the licensed work comes as is, without any
94
+ warranty or condition, and the licensor will not be liable to you for any
95
+ damages arising out of these terms or the use or nature of the licensed
96
+ work, under any kind of legal claim.***
97
+
98
+ ### Change Date
99
+
100
+ On the Change Date, or the fourth anniversary of the first publicly
101
+ available distribution of a specific version of the Licensed Work under
102
+ this License, whichever comes first, the Licensor hereby grants you
103
+ rights under the terms of the Change License, and the rights granted in
104
+ the paragraphs above terminate.
105
+
106
+ ### Change License
107
+
108
+ On the Change Date, the Licensed Work will be made available under the
109
+ Change License specified above (MIT).
package/README.md ADDED
@@ -0,0 +1,108 @@
1
+ # @revealui/harnesses
2
+
3
+ > **Commercial package** — requires a [RevealUI Pro license](https://revealui.com/pro). Free to install and evaluate; a license key is required for production use.
4
+
5
+
6
+ AI harness coordination for RevealUI — enables multiple AI coding tools to work on the same codebase safely and in parallel.
7
+
8
+ ## Features
9
+
10
+ - **Multi-Harness Coordination**: Claude Code, Cursor, Copilot adapters with conflict detection
11
+ - **Workboard Protocol**: Shared `.claude/workboard.md` for session tracking and file reservations
12
+ - **Auto-Detection**: Discovers installed harnesses via PATH and running processes
13
+ - **JSON-RPC 2.0 Server**: Unix domain socket IPC for harness-to-harness communication
14
+ - **Config Sync**: Portable config backup to external drives (DevPod/LTS)
15
+ - **Session Identity**: Detects parent environment (Zed, Cursor, terminal) via process chain
16
+
17
+ ## Architecture
18
+
19
+ ```
20
+ packages/harnesses/src/
21
+ ├── adapters/ # AI tool adapters (Claude Code, Copilot)
22
+ ├── config/ # Config path resolution and SSD sync
23
+ ├── detection/ # Auto-detect installed/running harnesses
24
+ ├── registry/ # Lifecycle management of adapters
25
+ ├── server/ # JSON-RPC 2.0 over Unix socket
26
+ ├── types/ # HarnessAdapter contract, commands, events
27
+ ├── workboard/ # Multi-agent workboard coordination
28
+ ├── coordinator.ts # Main orchestrator (start/stop lifecycle)
29
+ └── cli.ts # CLI daemon and RPC client
30
+ ```
31
+
32
+ ## CLI
33
+
34
+ ```bash
35
+ # Start daemon (detect harnesses, register session, start RPC server)
36
+ revealui-harnesses start --project /path/to/repo
37
+
38
+ # List available harnesses
39
+ revealui-harnesses status
40
+
41
+ # Sync harness config to/from SSD
42
+ revealui-harnesses sync claude-code push
43
+
44
+ # Print workboard state
45
+ revealui-harnesses coordinate --print
46
+ ```
47
+
48
+ ## Usage
49
+
50
+ ```typescript
51
+ import { HarnessCoordinator } from '@revealui/harnesses'
52
+
53
+ const coordinator = new HarnessCoordinator({ projectRoot: '/path/to/repo' })
54
+ await coordinator.start()
55
+
56
+ // Coordinator auto-detects harnesses, registers in workboard, starts RPC server
57
+ // On shutdown:
58
+ await coordinator.stop()
59
+ ```
60
+
61
+ ### Workboard Coordination
62
+
63
+ ```typescript
64
+ import { WorkboardManager, deriveSessionId } from '@revealui/harnesses/workboard'
65
+
66
+ const manager = new WorkboardManager('/path/to/repo/.claude/workboard.md')
67
+ const state = await manager.read()
68
+
69
+ // Register session
70
+ const sessionId = await deriveSessionId()
71
+ await manager.registerSession({
72
+ id: sessionId,
73
+ env: 'Zed/WSL',
74
+ task: 'implementing feature X',
75
+ files: ['src/feature.ts'],
76
+ })
77
+ ```
78
+
79
+ ## Exports
80
+
81
+ | Subpath | Contents |
82
+ |---------|----------|
83
+ | `@revealui/harnesses` | Full API: adapters, registry, coordinator, detection, config |
84
+ | `@revealui/harnesses/types` | Type definitions: HarnessAdapter, commands, events, capabilities |
85
+ | `@revealui/harnesses/workboard` | WorkboardManager, deriveSessionId, detectSessionType |
86
+
87
+ ## Development
88
+
89
+ ```bash
90
+ # Run tests
91
+ pnpm --filter @revealui/harnesses test
92
+
93
+ # Type check
94
+ pnpm --filter @revealui/harnesses typecheck
95
+
96
+ # Build
97
+ pnpm --filter @revealui/harnesses build
98
+ ```
99
+
100
+ ## Related Documentation
101
+
102
+ - [Coordination Rules](../../.claude/rules/coordination.md) — Multi-instance protocol
103
+ - [Architecture Guide](../../docs/ARCHITECTURE.md) — System architecture
104
+ - [Editors Package](../editors/README.md) — Editor daemon (parallel architecture)
105
+
106
+ ## License
107
+
108
+ Commercial — see [LICENSE.commercial](../../LICENSE.commercial)