@pennyfarthing/cyclist 9.4.0 → 10.0.0
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/dist/api/hook-request.d.ts +11 -0
- package/dist/api/hook-request.d.ts.map +1 -1
- package/dist/api/hook-request.js +126 -28
- package/dist/api/hook-request.js.map +1 -1
- package/dist/api/index.d.ts +1 -0
- package/dist/api/index.d.ts.map +1 -1
- package/dist/api/index.js +2 -0
- package/dist/api/index.js.map +1 -1
- package/dist/api/permissions.d.ts +16 -0
- package/dist/api/permissions.d.ts.map +1 -0
- package/dist/api/permissions.js +67 -0
- package/dist/api/permissions.js.map +1 -0
- package/dist/api/theme-agents.d.ts +4 -0
- package/dist/api/theme-agents.d.ts.map +1 -1
- package/dist/api/theme-agents.js +3 -0
- package/dist/api/theme-agents.js.map +1 -1
- package/dist/approval-gate.d.ts +3 -75
- package/dist/approval-gate.d.ts.map +1 -1
- package/dist/approval-gate.js +4 -121
- package/dist/approval-gate.js.map +1 -1
- package/dist/hooks/cyclist-pretooluse-hook.d.ts +60 -0
- package/dist/hooks/cyclist-pretooluse-hook.d.ts.map +1 -0
- package/dist/hooks/cyclist-pretooluse-hook.js +57 -0
- package/dist/hooks/cyclist-pretooluse-hook.js.map +1 -0
- package/dist/hooks/pretooluse-hook.d.ts +89 -0
- package/dist/hooks/pretooluse-hook.d.ts.map +1 -0
- package/dist/hooks/pretooluse-hook.js +235 -0
- package/dist/hooks/pretooluse-hook.js.map +1 -0
- package/dist/main.d.ts +1 -134
- package/dist/main.d.ts.map +1 -1
- package/dist/main.js +42 -373
- package/dist/main.js.map +1 -1
- package/dist/menu-builder.d.ts +7 -1
- package/dist/menu-builder.d.ts.map +1 -1
- package/dist/menu-builder.js +36 -1
- package/dist/menu-builder.js.map +1 -1
- package/dist/otlp-receiver.d.ts.map +1 -1
- package/dist/otlp-receiver.js +6 -0
- package/dist/otlp-receiver.js.map +1 -1
- package/dist/public/css/react.css +1 -1
- package/dist/public/js/react/react.js +41 -41
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +14 -3
- package/dist/server.js.map +1 -1
- package/dist/settings-store.d.ts +3 -1
- package/dist/settings-store.d.ts.map +1 -1
- package/dist/settings-store.js +18 -9
- package/dist/settings-store.js.map +1 -1
- package/dist/websocket.d.ts +1 -0
- package/dist/websocket.d.ts.map +1 -1
- package/dist/websocket.js +48 -5
- package/dist/websocket.js.map +1 -1
- package/dist/workflow-presets.d.ts +72 -0
- package/dist/workflow-presets.d.ts.map +1 -0
- package/dist/workflow-presets.js +93 -0
- package/dist/workflow-presets.js.map +1 -0
- package/package.json +2 -2
- package/src/public/App.tsx +59 -1
- package/src/public/components/ApprovalModal/index.tsx +31 -1
- package/src/public/components/ControlBar.tsx +18 -19
- package/src/public/components/DockviewWorkspace.tsx +35 -5
- package/src/public/components/Message.tsx +58 -2
- package/src/public/components/MessageView.tsx +31 -3
- package/src/public/components/PersonaHeader.tsx +3 -1
- package/src/public/components/panels/BackgroundPanel.tsx +1 -1
- package/src/public/components/panels/MessagePanel.tsx +66 -4
- package/src/public/components/panels/SettingsPanel.tsx +3 -28
- package/src/public/components/panels/WorkflowPanel.tsx +25 -3
- package/src/public/contexts/ClaudeContext.tsx +16 -1
- package/src/public/hooks/useColorScheme.ts +27 -0
- package/src/public/hooks/usePlanModeExit.ts +105 -0
- package/src/public/styles/dockview-theme.css +31 -33
- package/src/public/styles/tailwind.css +199 -18
- package/src/public/types/message.ts +2 -1
- package/src/public/utils/markdown.ts +2 -2
package/dist/main.d.ts
CHANGED
|
@@ -14,10 +14,9 @@ import { type TodoItem } from './todos.js';
|
|
|
14
14
|
import { getProjectDirectory, setProjectDirectory, isValidProjectDirectory } from './paths.js';
|
|
15
15
|
import { ContextInfo } from './api/context.js';
|
|
16
16
|
import { type CyclistSettings, type SettingsInput } from './settings.js';
|
|
17
|
-
import { type ToolUseMessage, type SDKToolResultError } from './approval-gate.js';
|
|
18
17
|
export { getProjectDirectory, setProjectDirectory, isValidProjectDirectory };
|
|
19
18
|
export { IPC_DATA_CHANNELS, IPC_CLAUDE_CHANNELS, IPC_AGENT_CHANNELS, IPC_DIFF_CHANNELS, IPC_SETTINGS_CHANNELS, IPC_AUDIT_LOG_CHANNELS, IPC_FILE_BROWSER_CHANNELS, IPC_COMMAND_CHANNELS, IPC_BACKGROUND_TASK_CHANNELS, IPC_SKILL_CHANNELS, IPC_CONTEXT_CLEAR_CHANNELS, IPC_LAYOUT_CHANNELS, IPC_AVATAR_CHANNELS, } from './ipc-channels.js';
|
|
20
|
-
export { AgentDefinition, WorkflowDefinition, AGENT_DEFINITIONS, WORKFLOW_DEFINITIONS, buildAgentMenu, buildWorkflowMenu, buildToolsMenu, buildViewMenu, getMenuTemplate, } from './menu-builder.js';
|
|
19
|
+
export { AgentDefinition, WorkflowDefinition, AGENT_DEFINITIONS, WORKFLOW_DEFINITIONS, buildAgentMenu, buildWorkflowMenu, buildToolsMenu, buildViewMenu, getMenuTemplate, setPanelToggleBroadcast, } from './menu-builder.js';
|
|
21
20
|
/**
|
|
22
21
|
* Get list of registered data IPC channels (for testing)
|
|
23
22
|
* Returns the data channels that setupDataIPCHandlers will register
|
|
@@ -329,138 +328,6 @@ export declare function getCommandChannels(): string[];
|
|
|
329
328
|
export declare function setupCommandIPCHandlers(ipcMain: {
|
|
330
329
|
handle: (channel: string, handler: (event: unknown, ...args: unknown[]) => Promise<unknown>) => void;
|
|
331
330
|
}): void;
|
|
332
|
-
/**
|
|
333
|
-
* Result from processToolUseWithApproval
|
|
334
|
-
*/
|
|
335
|
-
export interface ApprovalResult {
|
|
336
|
-
needsApproval: boolean;
|
|
337
|
-
passThrough: boolean;
|
|
338
|
-
approved?: boolean;
|
|
339
|
-
rejected?: boolean;
|
|
340
|
-
errorMessage?: SDKToolResultError;
|
|
341
|
-
}
|
|
342
|
-
/**
|
|
343
|
-
* Set the IPC sender function (for testing)
|
|
344
|
-
*/
|
|
345
|
-
export declare function setIPCSender(sender: ((channel: string, data: unknown) => void) | null): void;
|
|
346
|
-
/**
|
|
347
|
-
* Set the tool executor function (for testing)
|
|
348
|
-
*/
|
|
349
|
-
export declare function setToolExecutor(executor: ((message: ToolUseMessage) => void) | null): void;
|
|
350
|
-
/**
|
|
351
|
-
* Set the error injector function (for testing)
|
|
352
|
-
*/
|
|
353
|
-
export declare function setErrorInjector(injector: ((error: SDKToolResultError) => void) | null): void;
|
|
354
|
-
/**
|
|
355
|
-
* Send an approval request to the renderer via IPC
|
|
356
|
-
*/
|
|
357
|
-
export declare function sendApprovalRequest(toolId: string, toolName: string, context: Record<string, unknown>): void;
|
|
358
|
-
/**
|
|
359
|
-
* Handle permission response from renderer
|
|
360
|
-
* Called by IPC handler when user responds to approval modal
|
|
361
|
-
*/
|
|
362
|
-
export declare function handlePermissionResponse(response: {
|
|
363
|
-
toolId: string;
|
|
364
|
-
approved: boolean;
|
|
365
|
-
grantScope?: 'once' | 'session' | 'always';
|
|
366
|
-
}): void;
|
|
367
|
-
/**
|
|
368
|
-
* Process a tool_use message with approval gate check
|
|
369
|
-
* This is the main integration point for story 33-7
|
|
370
|
-
*
|
|
371
|
-
* @param message - The tool_use message to process
|
|
372
|
-
* @returns ApprovalResult indicating whether approval is needed and outcome
|
|
373
|
-
*/
|
|
374
|
-
export declare function processToolUseWithApproval(message: ToolUseMessage): Promise<ApprovalResult>;
|
|
375
|
-
/**
|
|
376
|
-
* Set up IPC handlers for approval gate
|
|
377
|
-
* Story 33-7: Handles permission request/response flow
|
|
378
|
-
*/
|
|
379
|
-
export declare function setupApprovalIPCHandlers(ipcMain: {
|
|
380
|
-
handle?: (channel: string, handler: (event: unknown, ...args: unknown[]) => Promise<unknown>) => void;
|
|
381
|
-
on?: (channel: string, handler: (event: unknown, ...args: unknown[]) => void) => void;
|
|
382
|
-
}): void;
|
|
383
|
-
/**
|
|
384
|
-
* Resolve a pending hook approval (called when user responds to modal)
|
|
385
|
-
*/
|
|
386
|
-
export declare function resolveHookApproval(toolId: string, approved: boolean, grantScope?: 'once' | 'session' | 'always'): void;
|
|
387
|
-
/**
|
|
388
|
-
* Check if a tool_use is an interactive tool that needs data return
|
|
389
|
-
* MSSCI-11947: AC1 - Detect AskUserQuestion and ExitPlanMode
|
|
390
|
-
*/
|
|
391
|
-
export declare function isInteractiveToolUse(toolUse: {
|
|
392
|
-
tool_name?: string;
|
|
393
|
-
type?: string;
|
|
394
|
-
}): boolean;
|
|
395
|
-
/**
|
|
396
|
-
* Process an interactive tool_use and wait for user response with data
|
|
397
|
-
* MSSCI-11947: AC1 - Handle interactive tool approval flow
|
|
398
|
-
*/
|
|
399
|
-
export declare function processInteractiveToolUse(toolUse: {
|
|
400
|
-
tool_name?: string;
|
|
401
|
-
tool_id?: string;
|
|
402
|
-
input?: Record<string, unknown>;
|
|
403
|
-
}): Promise<{
|
|
404
|
-
decision: string;
|
|
405
|
-
reason: string;
|
|
406
|
-
data?: Record<string, unknown>;
|
|
407
|
-
}>;
|
|
408
|
-
/**
|
|
409
|
-
* Resolve a pending hook approval with data (for interactive tools)
|
|
410
|
-
* MSSCI-11947: AC1 - Extended resolve that includes data field
|
|
411
|
-
*/
|
|
412
|
-
export declare function resolveHookApprovalWithData(toolId: string, approved: boolean, grantScope?: 'once' | 'session' | 'always', data?: Record<string, unknown>): void;
|
|
413
|
-
/**
|
|
414
|
-
* Format hook response with optional data field
|
|
415
|
-
* MSSCI-11947: AC4 - Format response for hook output
|
|
416
|
-
*/
|
|
417
|
-
export declare function formatHookResponseWithData(decision: 'allow' | 'deny', reason: string, data?: Record<string, unknown>): {
|
|
418
|
-
decision: string;
|
|
419
|
-
reason: string;
|
|
420
|
-
data?: Record<string, unknown>;
|
|
421
|
-
};
|
|
422
|
-
/**
|
|
423
|
-
* Format answers as updatedInput for AskUserQuestion
|
|
424
|
-
* MSSCI-11947: AC4 - Format for hook updatedInput
|
|
425
|
-
*/
|
|
426
|
-
export declare function formatUpdatedInputForAskUserQuestion(answers: Record<string, string | string[]>): {
|
|
427
|
-
answers: Record<string, string | string[]>;
|
|
428
|
-
};
|
|
429
|
-
/**
|
|
430
|
-
* Format plan response as updatedInput for ExitPlanMode
|
|
431
|
-
* MSSCI-11947: AC4 - Format for hook updatedInput
|
|
432
|
-
*/
|
|
433
|
-
export declare function formatUpdatedInputForExitPlanMode(response: {
|
|
434
|
-
approved: boolean;
|
|
435
|
-
feedback?: string;
|
|
436
|
-
}): {
|
|
437
|
-
approved: boolean;
|
|
438
|
-
feedback?: string;
|
|
439
|
-
};
|
|
440
|
-
/**
|
|
441
|
-
* Serialize approval data for transmission
|
|
442
|
-
* MSSCI-11947: AC1 - JSON serialization helper
|
|
443
|
-
*/
|
|
444
|
-
export declare function serializeApprovalData(data: Record<string, unknown>): string;
|
|
445
|
-
/**
|
|
446
|
-
* Deserialize approval data from transmission
|
|
447
|
-
* MSSCI-11947: AC1 - JSON deserialization helper
|
|
448
|
-
*/
|
|
449
|
-
export declare function deserializeApprovalData(data: string): Record<string, unknown>;
|
|
450
|
-
/**
|
|
451
|
-
* Start the approval hook server with dynamic port selection
|
|
452
|
-
* Uses port 0 to let OS assign an available port (avoids race conditions)
|
|
453
|
-
* Writes port to .cyclist-approval-port for hook discovery
|
|
454
|
-
*/
|
|
455
|
-
export declare function startApprovalServer(): Promise<void>;
|
|
456
|
-
/**
|
|
457
|
-
* Stop the approval hook server and clean up port file
|
|
458
|
-
*/
|
|
459
|
-
export declare function stopApprovalServer(): void;
|
|
460
|
-
/**
|
|
461
|
-
* Get the current approval server port (for testing)
|
|
462
|
-
*/
|
|
463
|
-
export declare function getApprovalServerPort(): number | null;
|
|
464
331
|
/**
|
|
465
332
|
* Save session ID to file for persistence across app restarts
|
|
466
333
|
* E7-3: Session persistence support
|
package/dist/main.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"main.d.ts","sourceRoot":"","sources":["../src/main.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAOH,OAAO,EAAkB,SAAS,EAAoB,MAAM,iBAAiB,CAAC;AAyB9E,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAEhE,OAAO,EAAoC,KAAK,QAAQ,EAAE,MAAM,YAAY,CAAC;AAI7E,OAAO,EACL,mBAAmB,EACnB,mBAAmB,EACnB,uBAAuB,EAExB,MAAM,YAAY,CAAC;AACpB,OAAO,EAAmB,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAGhE,OAAO,EAML,KAAK,eAAe,EACpB,KAAK,aAAa,EACnB,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"main.d.ts","sourceRoot":"","sources":["../src/main.ts"],"names":[],"mappings":"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"}
|