@quantiya/codevibe-claude-plugin 2.0.40 → 2.0.42
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/node_modules/@quantiya/codevibe-core/bin/codevibe-web-mcp-bridge.js +91 -0
- package/node_modules/@quantiya/codevibe-core/dist/companion-mode/index.d.ts +1 -0
- package/node_modules/@quantiya/codevibe-core/dist/index.d.ts +4 -1
- package/node_modules/@quantiya/codevibe-core/dist/index.js +471 -453
- package/node_modules/@quantiya/codevibe-core/dist/local-executor/env-scrub.d.ts +10 -0
- package/node_modules/@quantiya/codevibe-core/dist/local-executor/implementor-argv.d.ts +34 -1
- package/node_modules/@quantiya/codevibe-core/dist/local-executor/index.d.ts +2 -1
- package/node_modules/@quantiya/codevibe-core/dist/local-executor/local-executor-impl.d.ts +1 -0
- package/node_modules/@quantiya/codevibe-core/dist/local-executor/types.d.ts +1 -0
- package/node_modules/@quantiya/codevibe-core/dist/orchestration-shell/cli.d.ts +1 -1
- package/node_modules/@quantiya/codevibe-core/dist/orchestration-shell/cli.js +2156 -1107
- package/node_modules/@quantiya/codevibe-core/dist/orchestration-shell/command-intent.d.ts +18 -0
- package/node_modules/@quantiya/codevibe-core/dist/orchestration-shell/quorum-loop.d.ts +1 -0
- package/node_modules/@quantiya/codevibe-core/dist/orchestration-shell/team-decompose.d.ts +8 -8
- package/node_modules/@quantiya/codevibe-core/dist/orchestration-shell/web/agent-web-server.d.ts +44 -0
- package/node_modules/@quantiya/codevibe-core/dist/orchestration-shell/web/extract.d.ts +17 -0
- package/node_modules/@quantiya/codevibe-core/dist/orchestration-shell/web/fetch.d.ts +10 -0
- package/node_modules/@quantiya/codevibe-core/dist/orchestration-shell/web/web-extract-worker.d.ts +12 -0
- package/node_modules/@quantiya/codevibe-core/dist/orchestration-shell/web-extract-worker.js +7 -0
- package/node_modules/@quantiya/codevibe-core/dist/reviewer/index.d.ts +2 -2
- package/node_modules/@quantiya/codevibe-core/dist/substrate-launch/engage-substrate.d.ts +2 -0
- package/node_modules/@quantiya/codevibe-core/package.json +3 -2
- package/package.json +2 -2
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "codevibe-claude",
|
|
3
|
-
"version": "2.0.
|
|
3
|
+
"version": "2.0.42",
|
|
4
4
|
"description": "Sync Claude Code sessions with iOS mobile app via AWS backend. Control Claude Code from your phone with real-time bidirectional synchronization.",
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "CodeVibe Team"
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
//
|
|
3
|
+
// codevibe-web-mcp-bridge.js
|
|
4
|
+
// Durable Stdio MCP Bridge for CodeVibe Agent Web Access.
|
|
5
|
+
// Relays JSON-RPC 2.0 messages between implementor subprocess stdio and
|
|
6
|
+
// the authenticated local Unix Domain Socket (UDS) server in CodeVibe host.
|
|
7
|
+
//
|
|
8
|
+
const net = require('node:net');
|
|
9
|
+
const readline = require('node:readline');
|
|
10
|
+
|
|
11
|
+
function parseArgs(argv) {
|
|
12
|
+
let socketPath = '';
|
|
13
|
+
let token = '';
|
|
14
|
+
|
|
15
|
+
for (let i = 2; i < argv.length; i++) {
|
|
16
|
+
if (argv[i] === '--socket' && i + 1 < argv.length) {
|
|
17
|
+
socketPath = argv[++i];
|
|
18
|
+
} else if (argv[i] === '--token' && i + 1 < argv.length) {
|
|
19
|
+
token = argv[++i];
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
return { socketPath, token };
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
const { socketPath, token } = parseArgs(process.argv);
|
|
27
|
+
|
|
28
|
+
if (!socketPath || !token) {
|
|
29
|
+
process.stderr.write('Usage: codevibe-web-mcp-bridge --socket <path> --token <hex-token>\n');
|
|
30
|
+
process.exit(1);
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
const client = net.createConnection(socketPath, () => {
|
|
34
|
+
// Connected to CodeVibe UDS server
|
|
35
|
+
});
|
|
36
|
+
|
|
37
|
+
client.on('error', (err) => {
|
|
38
|
+
process.stderr.write(`[codevibe-web-bridge] Socket error: ${err.message}\n`);
|
|
39
|
+
process.exit(1);
|
|
40
|
+
});
|
|
41
|
+
|
|
42
|
+
client.on('close', () => {
|
|
43
|
+
process.exit(0);
|
|
44
|
+
});
|
|
45
|
+
|
|
46
|
+
// Read line-delimited JSON-RPC from UDS server and forward directly to stdout
|
|
47
|
+
const rlSocket = readline.createInterface({
|
|
48
|
+
input: client,
|
|
49
|
+
crlfDelay: Infinity,
|
|
50
|
+
});
|
|
51
|
+
|
|
52
|
+
rlSocket.on('line', (line) => {
|
|
53
|
+
if (line.trim()) {
|
|
54
|
+
process.stdout.write(line + '\n');
|
|
55
|
+
}
|
|
56
|
+
});
|
|
57
|
+
|
|
58
|
+
// Read line-delimited JSON-RPC from stdin (Claude Code), attach token, and forward to UDS server
|
|
59
|
+
const rlStdin = readline.createInterface({
|
|
60
|
+
input: process.stdin,
|
|
61
|
+
crlfDelay: Infinity,
|
|
62
|
+
});
|
|
63
|
+
|
|
64
|
+
rlStdin.on('line', (line) => {
|
|
65
|
+
const trimmed = line.trim();
|
|
66
|
+
if (!trimmed) return;
|
|
67
|
+
|
|
68
|
+
try {
|
|
69
|
+
const msg = JSON.parse(trimmed);
|
|
70
|
+
// Attach authentication token for host verification
|
|
71
|
+
msg.token = token;
|
|
72
|
+
client.write(JSON.stringify(msg) + '\n');
|
|
73
|
+
} catch (err) {
|
|
74
|
+
// If not valid JSON, cannot attach token; forward raw or reject
|
|
75
|
+
process.stderr.write(`[codevibe-web-bridge] Invalid JSON on stdin: ${err.message}\n`);
|
|
76
|
+
}
|
|
77
|
+
});
|
|
78
|
+
|
|
79
|
+
rlStdin.on('close', () => {
|
|
80
|
+
client.end();
|
|
81
|
+
});
|
|
82
|
+
|
|
83
|
+
process.on('SIGTERM', () => {
|
|
84
|
+
client.destroy();
|
|
85
|
+
process.exit(0);
|
|
86
|
+
});
|
|
87
|
+
|
|
88
|
+
process.on('SIGINT', () => {
|
|
89
|
+
client.destroy();
|
|
90
|
+
process.exit(0);
|
|
91
|
+
});
|
|
@@ -27,6 +27,7 @@ export interface CompanionArgs {
|
|
|
27
27
|
/** Test seam — override the blocking private-launcher handoff. */
|
|
28
28
|
spawnFile?: (binPath: string, args: string[], options: {
|
|
29
29
|
stdio: 'inherit';
|
|
30
|
+
env?: NodeJS.ProcessEnv;
|
|
30
31
|
}) => CompanionProcessResult;
|
|
31
32
|
/** Test seam — production re-signals this process when the child dies by signal. */
|
|
32
33
|
signalSelf?: (signal: NodeJS.Signals) => void;
|
|
@@ -30,6 +30,7 @@ export type { ResumeOrCreateSessionInput, ResumeOrCreateSessionResult } from './
|
|
|
30
30
|
export { detectInstalledAgents, pushDetectedAgents, V1_ORCHESTRATION_PROMPT_KIND, V1_ORCHESTRATION_OPTIONS, mapOptionNumberToUserDecisionKind, mapOptionToUserDecisionKind, } from './orchestration';
|
|
31
31
|
export type { DetectableAgent, V1OrchestrationOption, V1UserDecisionKind, } from './orchestration';
|
|
32
32
|
export * as Reviewer from './reviewer';
|
|
33
|
+
export { buildClaudeReviewerCommand, buildAntigravityReviewerCommand } from './reviewer';
|
|
33
34
|
export * as AuditKeys from './audit-keys';
|
|
34
35
|
export * as Substrate from './substrate';
|
|
35
36
|
export * as CredentialBroker from './credential-broker';
|
|
@@ -58,4 +59,6 @@ export { CONTEXT_SESSION_PSEUDO_TASK_NAMESPACE, deriveSessionPseudoTaskId, audit
|
|
|
58
59
|
export type { Mode, Tier, PlannerDecision, AgentKind, PlannerHealthState, OrchestrationState, OrchestrationAction, ConversationEntry, RunningTaskState, ReviewerSeatState, GateState, ExecutionEventEntry, RefusalEventEntry, BypassEventEntry, MobileEventEntry, EventStreamEntry, QueuedTask, PendingClarification, LastModeFile, } from './orchestration-shell';
|
|
59
60
|
export { buildAuditBrowserModel, formatAuditExport, renderAuditBrowserText, renderAuditResultText, runAuditBrowser, type AuditDetailRow, type AuditFilterOptions, type AuditExportFormat, type AuditExportPayload, type AuditBrowserModel, type AuditEntryModel, } from './orchestration-shell';
|
|
60
61
|
export { compileAuditSummary, renderSummaryMarkdown, isTaskCompletionAuditSummary, runAuditSummary, wireTeamMergeAuditSummary, AUDIT_SUMMARY_PRO_MAX_HEADLINE, AUDIT_SUMMARY_UPGRADE_HINT, type TaskAuditSummaryModel, type AuditSeatModel, type AuditFindingModel, type VerificationResultModel, type TaskCompletionOutcome, type UserDecisionRecord, type ReviewHistorySnapshot, type RunAuditSummaryResult, type RunAuditSummaryDeps, QuorumLoop, type QuorumLoopDeps, } from './orchestration-shell';
|
|
61
|
-
export { atomicWriteJsonSync, FileDurableTeamDeliveryJournal, RevertManifestStore, wireSnapshotMergeObserver, adaptSnapshotMergeResult, runSnapshotMergeWithObservedCleanup, emitTeamCompletionSummary, runSnapshotMergeGate, createSnapshotTrackBundle, captureWorkspaceRootAuthority, LocalExecutorImpl, WorkspaceShadow, type SnapshotTrackBundle, type WorkspaceRootAuthority, type ShadowEnv, type ShadowDiffFile, type LocalExecutorImplDeps, type AtomicWriteOptions, type TeamDeliveryJournalEntry, type TeamDeliveryRouting, type SnapshotCleanupObserver, type WireSnapshotMergeObserverResult, type AdaptedSnapshotMergeResult, type RunSnapshotMergeWithObservedCleanupOptions, type EmitTeamCompletionSummaryOptions, type EmitTeamCompletionSummaryResult, } from './local-executor';
|
|
62
|
+
export { atomicWriteJsonSync, FileDurableTeamDeliveryJournal, RevertManifestStore, wireSnapshotMergeObserver, adaptSnapshotMergeResult, runSnapshotMergeWithObservedCleanup, emitTeamCompletionSummary, runSnapshotMergeGate, createSnapshotTrackBundle, captureWorkspaceRootAuthority, LocalExecutorImpl, WorkspaceShadow, buildImplementorArgv, extractMcpServerConfig, setupAgyWebPlugin, stripAgyWebPlugin, stripClaudeWebArgs, stripCodexWebArgs, enforceCommand, makeImplementorCommandScope, scrubSearchApiKeys, SEARCH_API_KEY_NAMES, type SnapshotTrackBundle, type WorkspaceRootAuthority, type ShadowEnv, type ShadowDiffFile, type LocalExecutorImplDeps, type AtomicWriteOptions, type TeamDeliveryJournalEntry, type TeamDeliveryRouting, type SnapshotCleanupObserver, type WireSnapshotMergeObserverResult, type AdaptedSnapshotMergeResult, type RunSnapshotMergeWithObservedCleanupOptions, type EmitTeamCompletionSummaryOptions, type EmitTeamCompletionSummaryResult, } from './local-executor';
|
|
63
|
+
export { startAgentWebTurn, sweepOrphanedFallbackDirs, formatFetchedContent, sanitizeUrlForAudit, MAX_SEARCHES_PER_TURN, MAX_FETCHES_PER_TURN, MAX_DYNAMIC_FETCH_CHARS, type AgentWebTurnContext, type WebAuditRecord, } from './orchestration-shell/web/agent-web-server';
|
|
64
|
+
export { WebExtractTimeoutError, WebExtractAbortError, htmlToTextWorker, type WorkerExtractOptions, } from './orchestration-shell/web/extract';
|