@locusai/sdk 0.16.2 → 0.18.2

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.
Files changed (133) hide show
  1. package/PACKAGE_GUIDE.md +269 -0
  2. package/package.json +28 -28
  3. package/dist/agent/codebase-indexer-service.d.ts +0 -17
  4. package/dist/agent/codebase-indexer-service.d.ts.map +0 -1
  5. package/dist/agent/document-fetcher.d.ts +0 -23
  6. package/dist/agent/document-fetcher.d.ts.map +0 -1
  7. package/dist/agent/git-workflow.d.ts +0 -59
  8. package/dist/agent/git-workflow.d.ts.map +0 -1
  9. package/dist/agent/index.d.ts +0 -9
  10. package/dist/agent/index.d.ts.map +0 -1
  11. package/dist/agent/review-service.d.ts +0 -21
  12. package/dist/agent/review-service.d.ts.map +0 -1
  13. package/dist/agent/reviewer-worker.d.ts +0 -42
  14. package/dist/agent/reviewer-worker.d.ts.map +0 -1
  15. package/dist/agent/task-executor.d.ts +0 -26
  16. package/dist/agent/task-executor.d.ts.map +0 -1
  17. package/dist/agent/worker-cli.d.ts +0 -6
  18. package/dist/agent/worker-cli.d.ts.map +0 -1
  19. package/dist/agent/worker-types.d.ts +0 -36
  20. package/dist/agent/worker-types.d.ts.map +0 -1
  21. package/dist/agent/worker.d.ts +0 -40
  22. package/dist/agent/worker.d.ts.map +0 -1
  23. package/dist/agent/worker.js +0 -2792
  24. package/dist/ai/__tests__/factory.test.d.ts +0 -2
  25. package/dist/ai/__tests__/factory.test.d.ts.map +0 -1
  26. package/dist/ai/claude-runner.d.ts +0 -35
  27. package/dist/ai/claude-runner.d.ts.map +0 -1
  28. package/dist/ai/claude-stream-parser.d.ts +0 -41
  29. package/dist/ai/claude-stream-parser.d.ts.map +0 -1
  30. package/dist/ai/codex-runner.d.ts +0 -38
  31. package/dist/ai/codex-runner.d.ts.map +0 -1
  32. package/dist/ai/factory.d.ts +0 -26
  33. package/dist/ai/factory.d.ts.map +0 -1
  34. package/dist/ai/index.d.ts +0 -8
  35. package/dist/ai/index.d.ts.map +0 -1
  36. package/dist/ai/runner.d.ts +0 -23
  37. package/dist/ai/runner.d.ts.map +0 -1
  38. package/dist/core/config.d.ts +0 -58
  39. package/dist/core/config.d.ts.map +0 -1
  40. package/dist/core/index.d.ts +0 -4
  41. package/dist/core/index.d.ts.map +0 -1
  42. package/dist/core/indexer.d.ts +0 -31
  43. package/dist/core/indexer.d.ts.map +0 -1
  44. package/dist/core/prompt-builder.d.ts +0 -14
  45. package/dist/core/prompt-builder.d.ts.map +0 -1
  46. package/dist/discussion/agents/facilitator-prompt.d.ts +0 -13
  47. package/dist/discussion/agents/facilitator-prompt.d.ts.map +0 -1
  48. package/dist/discussion/discussion-facilitator.d.ts +0 -67
  49. package/dist/discussion/discussion-facilitator.d.ts.map +0 -1
  50. package/dist/discussion/discussion-manager.d.ts +0 -59
  51. package/dist/discussion/discussion-manager.d.ts.map +0 -1
  52. package/dist/discussion/discussion-types.d.ts +0 -89
  53. package/dist/discussion/discussion-types.d.ts.map +0 -1
  54. package/dist/discussion/index.d.ts +0 -5
  55. package/dist/discussion/index.d.ts.map +0 -1
  56. package/dist/events.d.ts +0 -22
  57. package/dist/events.d.ts.map +0 -1
  58. package/dist/exec/context-tracker.d.ts +0 -183
  59. package/dist/exec/context-tracker.d.ts.map +0 -1
  60. package/dist/exec/event-emitter.d.ts +0 -117
  61. package/dist/exec/event-emitter.d.ts.map +0 -1
  62. package/dist/exec/events.d.ts +0 -171
  63. package/dist/exec/events.d.ts.map +0 -1
  64. package/dist/exec/exec-session.d.ts +0 -164
  65. package/dist/exec/exec-session.d.ts.map +0 -1
  66. package/dist/exec/history-manager.d.ts +0 -153
  67. package/dist/exec/history-manager.d.ts.map +0 -1
  68. package/dist/exec/index.d.ts +0 -7
  69. package/dist/exec/index.d.ts.map +0 -1
  70. package/dist/exec/types.d.ts +0 -130
  71. package/dist/exec/types.d.ts.map +0 -1
  72. package/dist/git/git-utils.d.ts +0 -31
  73. package/dist/git/git-utils.d.ts.map +0 -1
  74. package/dist/git/index.d.ts +0 -3
  75. package/dist/git/index.d.ts.map +0 -1
  76. package/dist/git/pr-service.d.ts +0 -66
  77. package/dist/git/pr-service.d.ts.map +0 -1
  78. package/dist/index-node.d.ts +0 -22
  79. package/dist/index-node.d.ts.map +0 -1
  80. package/dist/index-node.js +0 -5607
  81. package/dist/index.d.ts +0 -37
  82. package/dist/index.d.ts.map +0 -1
  83. package/dist/index.js +0 -559
  84. package/dist/modules/auth.d.ts +0 -23
  85. package/dist/modules/auth.d.ts.map +0 -1
  86. package/dist/modules/base.d.ts +0 -8
  87. package/dist/modules/base.d.ts.map +0 -1
  88. package/dist/modules/ci.d.ts +0 -8
  89. package/dist/modules/ci.d.ts.map +0 -1
  90. package/dist/modules/docs.d.ts +0 -14
  91. package/dist/modules/docs.d.ts.map +0 -1
  92. package/dist/modules/invitations.d.ts +0 -10
  93. package/dist/modules/invitations.d.ts.map +0 -1
  94. package/dist/modules/organizations.d.ts +0 -24
  95. package/dist/modules/organizations.d.ts.map +0 -1
  96. package/dist/modules/sprints.d.ts +0 -14
  97. package/dist/modules/sprints.d.ts.map +0 -1
  98. package/dist/modules/tasks.d.ts +0 -25
  99. package/dist/modules/tasks.d.ts.map +0 -1
  100. package/dist/modules/workspaces.d.ts +0 -44
  101. package/dist/modules/workspaces.d.ts.map +0 -1
  102. package/dist/orchestrator/index.d.ts +0 -85
  103. package/dist/orchestrator/index.d.ts.map +0 -1
  104. package/dist/orchestrator/types.d.ts +0 -36
  105. package/dist/orchestrator/types.d.ts.map +0 -1
  106. package/dist/planning/agents/architect.d.ts +0 -1
  107. package/dist/planning/agents/architect.d.ts.map +0 -1
  108. package/dist/planning/agents/cross-task-reviewer.d.ts +0 -1
  109. package/dist/planning/agents/cross-task-reviewer.d.ts.map +0 -1
  110. package/dist/planning/agents/planner.d.ts +0 -20
  111. package/dist/planning/agents/planner.d.ts.map +0 -1
  112. package/dist/planning/agents/sprint-organizer.d.ts +0 -1
  113. package/dist/planning/agents/sprint-organizer.d.ts.map +0 -1
  114. package/dist/planning/agents/tech-lead.d.ts +0 -1
  115. package/dist/planning/agents/tech-lead.d.ts.map +0 -1
  116. package/dist/planning/index.d.ts +0 -4
  117. package/dist/planning/index.d.ts.map +0 -1
  118. package/dist/planning/plan-manager.d.ts +0 -51
  119. package/dist/planning/plan-manager.d.ts.map +0 -1
  120. package/dist/planning/planning-meeting.d.ts +0 -34
  121. package/dist/planning/planning-meeting.d.ts.map +0 -1
  122. package/dist/planning/sprint-plan.d.ts +0 -51
  123. package/dist/planning/sprint-plan.d.ts.map +0 -1
  124. package/dist/utils/colors.d.ts +0 -62
  125. package/dist/utils/colors.d.ts.map +0 -1
  126. package/dist/utils/json-extractor.d.ts +0 -10
  127. package/dist/utils/json-extractor.d.ts.map +0 -1
  128. package/dist/utils/resolve-bin.d.ts +0 -15
  129. package/dist/utils/resolve-bin.d.ts.map +0 -1
  130. package/dist/utils/retry.d.ts +0 -8
  131. package/dist/utils/retry.d.ts.map +0 -1
  132. package/dist/utils/structured-output.d.ts +0 -14
  133. package/dist/utils/structured-output.d.ts.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"invitations.d.ts","sourceRoot":"","sources":["../../src/modules/invitations.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,EAChB,wBAAwB,EACxB,gBAAgB,EAChB,UAAU,EACV,kBAAkB,EAEnB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAEvC,qBAAa,iBAAkB,SAAQ,UAAU;IACzC,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,gBAAgB,GAAG,OAAO,CAAC,UAAU,CAAC;IAQlE,IAAI,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC;IAO1C,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAOlD,MAAM,CAAC,IAAI,EAAE,gBAAgB,GAAG,OAAO,CAAC,wBAAwB,CAAC;IAQjE,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAGvD"}
@@ -1,24 +0,0 @@
1
- import { AddMember, MembershipWithUser, Organization } from "@locusai/shared";
2
- import { BaseModule } from "./base.js";
3
- export interface OrganizationApiKey {
4
- id: string;
5
- organizationId: string;
6
- name: string;
7
- key: string;
8
- active: boolean;
9
- lastUsedAt: string | null;
10
- createdAt: string;
11
- updatedAt: string;
12
- }
13
- export declare class OrganizationsModule extends BaseModule {
14
- list(): Promise<Organization[]>;
15
- getById(id: string): Promise<Organization>;
16
- listMembers(id: string): Promise<MembershipWithUser[]>;
17
- addMember(id: string, body: AddMember): Promise<MembershipWithUser>;
18
- removeMember(orgId: string, userId: string): Promise<void>;
19
- delete(orgId: string): Promise<void>;
20
- listApiKeys(orgId: string): Promise<OrganizationApiKey[]>;
21
- createApiKey(orgId: string, name: string): Promise<OrganizationApiKey>;
22
- deleteApiKey(orgId: string, keyId: string): Promise<void>;
23
- }
24
- //# sourceMappingURL=organizations.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"organizations.d.ts","sourceRoot":"","sources":["../../src/modules/organizations.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,SAAS,EAET,kBAAkB,EAElB,YAAY,EAGb,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAEvC,MAAM,WAAW,kBAAkB;IACjC,EAAE,EAAE,MAAM,CAAC;IACX,cAAc,EAAE,MAAM,CAAC;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,OAAO,CAAC;IAChB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;CACnB;AAUD,qBAAa,mBAAoB,SAAQ,UAAU;IAC3C,IAAI,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC;IAM/B,OAAO,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC;IAO1C,WAAW,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,EAAE,CAAC;IAOtD,SAAS,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAQnE,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAI1D,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIpC,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,EAAE,CAAC;IAOzD,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAQtE,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAGhE"}
@@ -1,14 +0,0 @@
1
- import { CreateSprint, Sprint, UpdateSprint } from "@locusai/shared";
2
- import { BaseModule } from "./base.js";
3
- export declare class SprintsModule extends BaseModule {
4
- list(workspaceId: string): Promise<Sprint[]>;
5
- getActive(workspaceId: string): Promise<Sprint>;
6
- getById(id: string, workspaceId: string): Promise<Sprint>;
7
- create(workspaceId: string, body: CreateSprint): Promise<Sprint>;
8
- update(id: string, workspaceId: string, body: UpdateSprint): Promise<Sprint>;
9
- delete(id: string, workspaceId: string): Promise<void>;
10
- start(id: string, workspaceId: string): Promise<Sprint>;
11
- complete(id: string, workspaceId: string): Promise<Sprint>;
12
- triggerAIPlanning(id: string, workspaceId: string): Promise<Sprint>;
13
- }
14
- //# sourceMappingURL=sprints.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"sprints.d.ts","sourceRoot":"","sources":["../../src/modules/sprints.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,YAAY,EACZ,MAAM,EAGN,YAAY,EACb,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAEvC,qBAAa,aAAc,SAAQ,UAAU;IACrC,IAAI,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAO5C,SAAS,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAO/C,OAAO,CAAC,EAAE,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAOzD,MAAM,CAAC,WAAW,EAAE,MAAM,EAAE,IAAI,EAAE,YAAY,GAAG,OAAO,CAAC,MAAM,CAAC;IAQhE,MAAM,CACV,EAAE,EAAE,MAAM,EACV,WAAW,EAAE,MAAM,EACnB,IAAI,EAAE,YAAY,GACjB,OAAO,CAAC,MAAM,CAAC;IAQZ,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAItD,KAAK,CAAC,EAAE,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAOvD,QAAQ,CAAC,EAAE,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAO1D,iBAAiB,CAAC,EAAE,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;CAM1E"}
@@ -1,25 +0,0 @@
1
- import { AddComment, Comment, CreateTask, Task, TaskStatus, UpdateTask } from "@locusai/shared";
2
- import { BaseModule } from "./base.js";
3
- export interface TaskListOptions {
4
- sprintId?: string;
5
- status?: TaskStatus | TaskStatus[];
6
- }
7
- export declare class TasksModule extends BaseModule {
8
- /**
9
- * List all tasks in a workspace, optionally filtered
10
- */
11
- list(workspaceId: string, options?: TaskListOptions): Promise<Task[]>;
12
- /**
13
- * Get available tasks for an agent to work on.
14
- * Returns tasks in BACKLOG or IN_PROGRESS (unassigned) status.
15
- */
16
- getAvailable(workspaceId: string, sprintId?: string): Promise<Task[]>;
17
- getById(id: string, workspaceId: string): Promise<Task>;
18
- create(workspaceId: string, body: CreateTask): Promise<Task>;
19
- update(id: string, workspaceId: string, body: UpdateTask): Promise<Task>;
20
- delete(id: string, workspaceId: string): Promise<void>;
21
- getBacklog(workspaceId: string): Promise<Task[]>;
22
- addComment(id: string, workspaceId: string, body: AddComment): Promise<Comment>;
23
- batchUpdate(ids: string[], workspaceId: string, updates: UpdateTask): Promise<void>;
24
- }
25
- //# sourceMappingURL=tasks.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"tasks.d.ts","sourceRoot":"","sources":["../../src/modules/tasks.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,UAAU,EACV,OAAO,EAEP,UAAU,EACV,IAAI,EAEJ,UAAU,EAEV,UAAU,EACX,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAEvC,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,UAAU,GAAG,UAAU,EAAE,CAAC;CACpC;AAED,qBAAa,WAAY,SAAQ,UAAU;IACzC;;OAEG;IACG,IAAI,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC;IAsB3E;;;OAGG;IACG,YAAY,CAAC,WAAW,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC;IAYrE,OAAO,CAAC,EAAE,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAOvD,MAAM,CAAC,WAAW,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IAQ5D,MAAM,CACV,EAAE,EAAE,MAAM,EACV,WAAW,EAAE,MAAM,EACnB,IAAI,EAAE,UAAU,GACf,OAAO,CAAC,IAAI,CAAC;IAQV,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAItD,UAAU,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC;IAOhD,UAAU,CACd,EAAE,EAAE,MAAM,EACV,WAAW,EAAE,MAAM,EACnB,IAAI,EAAE,UAAU,GACf,OAAO,CAAC,OAAO,CAAC;IAQb,WAAW,CACf,GAAG,EAAE,MAAM,EAAE,EACb,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,UAAU,GAClB,OAAO,CAAC,IAAI,CAAC;CAMjB"}
@@ -1,44 +0,0 @@
1
- import { AgentRegistrationInfo, CreateWorkspace, Event, Task, UpdateWorkspace, Workspace, WorkspaceStats } from "@locusai/shared";
2
- import { BaseModule } from "./base.js";
3
- export declare class WorkspacesModule extends BaseModule {
4
- listAll(): Promise<Workspace[]>;
5
- listByOrg(orgId: string): Promise<Workspace[]>;
6
- create(body: CreateWorkspace & {
7
- orgId: string;
8
- }): Promise<Workspace>;
9
- createWithAutoOrg(body: CreateWorkspace): Promise<Workspace>;
10
- getById(id: string): Promise<Workspace>;
11
- update(id: string, body: UpdateWorkspace): Promise<Workspace>;
12
- delete(id: string): Promise<void>;
13
- getStats(id: string): Promise<WorkspaceStats>;
14
- getActivity(id: string, limit?: number): Promise<Event[]>;
15
- /**
16
- * Dispatch a task from the workspace backlog to an agent.
17
- * Uses server-side locking to prevent double-assignment.
18
- */
19
- dispatch(id: string, workerId: string, sprintId?: string): Promise<Task>;
20
- /**
21
- * Send an agent heartbeat to the API.
22
- * Creates or updates the agent registration with current status.
23
- */
24
- heartbeat(workspaceId: string, agentId: string, currentTaskId?: string | null, status?: "IDLE" | "WORKING" | "COMPLETED" | "FAILED"): Promise<AgentRegistrationInfo>;
25
- /**
26
- * Get active agents for a workspace.
27
- */
28
- getAgents(workspaceId: string): Promise<AgentRegistrationInfo[]>;
29
- listApiKeys(workspaceId: string): Promise<WorkspaceApiKey[]>;
30
- createApiKey(workspaceId: string, name: string): Promise<WorkspaceApiKey>;
31
- deleteApiKey(workspaceId: string, keyId: string): Promise<void>;
32
- }
33
- export interface WorkspaceApiKey {
34
- id: string;
35
- organizationId?: string | null;
36
- workspaceId?: string | null;
37
- name: string;
38
- key: string;
39
- active: boolean;
40
- lastUsedAt: string | null;
41
- createdAt: string;
42
- updatedAt: string;
43
- }
44
- //# sourceMappingURL=workspaces.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"workspaces.d.ts","sourceRoot":"","sources":["../../src/modules/workspaces.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,qBAAqB,EAErB,eAAe,EACf,KAAK,EACL,IAAI,EAEJ,eAAe,EACf,SAAS,EAET,cAAc,EAEf,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAEvC,qBAAa,gBAAiB,SAAQ,UAAU;IACxC,OAAO,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;IAK/B,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC;IAO9C,MAAM,CAAC,IAAI,EAAE,eAAe,GAAG;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,SAAS,CAAC;IASrE,iBAAiB,CAAC,IAAI,EAAE,eAAe,GAAG,OAAO,CAAC,SAAS,CAAC;IAQ5D,OAAO,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC;IAKvC,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,eAAe,GAAG,OAAO,CAAC,SAAS,CAAC;IAQ7D,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIjC,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC;IAO7C,WAAW,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,EAAE,CAAC;IAU/D;;;OAGG;IACG,QAAQ,CACZ,EAAE,EAAE,MAAM,EACV,QAAQ,EAAE,MAAM,EAChB,QAAQ,CAAC,EAAE,MAAM,GAChB,OAAO,CAAC,IAAI,CAAC;IAYhB;;;OAGG;IACG,SAAS,CACb,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,MAAM,EACf,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,EAC7B,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,GAAG,WAAW,GAAG,QAAQ,GACnD,OAAO,CAAC,qBAAqB,CAAC;IAYjC;;OAEG;IACG,SAAS,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,qBAAqB,EAAE,CAAC;IAWhE,WAAW,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC;IAO5D,YAAY,CAChB,WAAW,EAAE,MAAM,EACnB,IAAI,EAAE,MAAM,GACX,OAAO,CAAC,eAAe,CAAC;IAQrB,YAAY,CAAC,WAAW,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAGtE;AAED,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,OAAO,CAAC;IAChB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;CACnB"}
@@ -1,85 +0,0 @@
1
- import { EventEmitter } from "events";
2
- import type { AgentState, OrchestratorConfig } from "./types.js";
3
- export type { AgentConfig, AgentState, OrchestratorConfig } from "./types.js";
4
- /**
5
- * Top-level orchestrator that coordinates task execution with a single agent.
6
- *
7
- * Spawns one worker process that sequentially claims and executes tasks.
8
- * The worker creates a single branch, pushes after each task, and opens
9
- * a PR when all tasks are done.
10
- */
11
- export declare class AgentOrchestrator extends EventEmitter {
12
- private client;
13
- private config;
14
- private isRunning;
15
- private processedTasks;
16
- private resolvedSprintId;
17
- private agentState;
18
- private heartbeatInterval;
19
- constructor(config: OrchestratorConfig);
20
- /**
21
- * Resolve the sprint ID — use provided or find active sprint.
22
- */
23
- private resolveSprintId;
24
- /**
25
- * Start the orchestrator with a single agent.
26
- */
27
- start(): Promise<void>;
28
- /**
29
- * Main orchestration loop.
30
- *
31
- * 1. Resolves sprint, fetches tasks, runs pre-flight checks
32
- * 2. Spawns a single agent worker process
33
- */
34
- private orchestrationLoop;
35
- private printBanner;
36
- private preflightChecks;
37
- /**
38
- * Get available tasks in sprint.
39
- */
40
- private getAvailableTasks;
41
- /**
42
- * Spawn a single agent worker process.
43
- */
44
- private spawnAgent;
45
- /**
46
- * Wait for the agent process to finish.
47
- */
48
- private waitForAgent;
49
- /**
50
- * Start monitoring agent heartbeats for stale detection.
51
- */
52
- private startHeartbeatMonitor;
53
- /**
54
- * Stop orchestrator.
55
- */
56
- stop(): Promise<void>;
57
- /**
58
- * Stop the agent.
59
- */
60
- stopAgent(agentId: string): boolean;
61
- /**
62
- * Cleanup — kill agent process.
63
- */
64
- private cleanup;
65
- /**
66
- * Get orchestrator stats.
67
- */
68
- getStats(): {
69
- activeAgents: number;
70
- totalTasksCompleted: number;
71
- totalTasksFailed: number;
72
- processedTasks: number;
73
- };
74
- /**
75
- * Get all agent states for status display.
76
- */
77
- getAgentStates(): AgentState[];
78
- private buildWorkerArgs;
79
- private attachProcessHandlers;
80
- /**
81
- * Resolve the worker script path from the SDK module location.
82
- */
83
- private resolveWorkerPath;
84
- }
85
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/orchestrator/index.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAKtC,OAAO,KAAK,EAAE,UAAU,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAGjE,YAAY,EAAE,WAAW,EAAE,UAAU,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAE9E;;;;;;GAMG;AACH,qBAAa,iBAAkB,SAAQ,YAAY;IACjD,OAAO,CAAC,MAAM,CAAc;IAC5B,OAAO,CAAC,MAAM,CAAqB;IACnC,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,cAAc,CAA0B;IAChD,OAAO,CAAC,gBAAgB,CAAuB;IAC/C,OAAO,CAAC,UAAU,CAA2B;IAC7C,OAAO,CAAC,iBAAiB,CAA+C;gBAE5D,MAAM,EAAE,kBAAkB;IAStC;;OAEG;YACW,eAAe;IAuB7B;;OAEG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAkB5B;;;;;OAKG;YACW,iBAAiB;IAkC/B,OAAO,CAAC,WAAW;IAWnB,OAAO,CAAC,eAAe;IAmBvB;;OAEG;YACW,iBAAiB;IAa/B;;OAEG;YACW,UAAU;IAyCxB;;OAEG;YACW,YAAY;IAM1B;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAqB7B;;OAEG;IACG,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAM3B;;OAEG;IACH,SAAS,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;IAQnC;;OAEG;YACW,OAAO;IAYrB;;OAEG;IACH,QAAQ;;;;;;IASR;;OAEG;IACH,cAAc,IAAI,UAAU,EAAE;IAI9B,OAAO,CAAC,eAAe;IA8BvB,OAAO,CAAC,qBAAqB;IA8D7B;;OAEG;IACH,OAAO,CAAC,iBAAiB;CAa1B"}
@@ -1,36 +0,0 @@
1
- import type { ChildProcess } from "node:child_process";
2
- import type { AiProvider } from "../ai/runner.js";
3
- export interface AgentConfig {
4
- id: string;
5
- maxConcurrentTasks: number;
6
- }
7
- export interface AgentState {
8
- id: string;
9
- status: "IDLE" | "WORKING" | "COMPLETED" | "FAILED";
10
- currentTaskId: string | null;
11
- tasksCompleted: number;
12
- tasksFailed: number;
13
- lastHeartbeat: Date;
14
- process?: ChildProcess;
15
- }
16
- export interface OrchestratorConfig {
17
- /** Workspace ID */
18
- workspaceId: string;
19
- /** Sprint ID */
20
- sprintId: string;
21
- /** API base URL */
22
- apiBase: string;
23
- /** Maximum number of iterations to run */
24
- maxIterations: number;
25
- /** Path to the project */
26
- projectPath: string;
27
- /** API key */
28
- apiKey: string;
29
- /** AI model (e.g. opus, sonnet, gpt-5.3-codex.) */
30
- model?: string;
31
- /** AI provider (e.g. codex, claude, etc.) */
32
- provider?: AiProvider;
33
- /** Reasoning effort level for Codex models (e.g. "low", "medium", "high") */
34
- reasoningEffort?: string;
35
- }
36
- //# sourceMappingURL=types.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/orchestrator/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAElD,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,kBAAkB,EAAE,MAAM,CAAC;CAC5B;AAED,MAAM,WAAW,UAAU;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,MAAM,GAAG,SAAS,GAAG,WAAW,GAAG,QAAQ,CAAC;IACpD,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,cAAc,EAAE,MAAM,CAAC;IACvB,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,IAAI,CAAC;IACpB,OAAO,CAAC,EAAE,YAAY,CAAC;CACxB;AAED,MAAM,WAAW,kBAAkB;IACjC,mBAAmB;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,gBAAgB;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,mBAAmB;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,0CAA0C;IAC1C,aAAa,EAAE,MAAM,CAAC;IACtB,0BAA0B;IAC1B,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc;IACd,MAAM,EAAE,MAAM,CAAC;IACf,mDAAmD;IACnD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,6CAA6C;IAC7C,QAAQ,CAAC,EAAE,UAAU,CAAC;IACtB,6EAA6E;IAC7E,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B"}
@@ -1 +0,0 @@
1
- //# sourceMappingURL=architect.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"architect.d.ts","sourceRoot":"","sources":["../../../src/planning/agents/architect.ts"],"names":[],"mappings":""}
@@ -1 +0,0 @@
1
- //# sourceMappingURL=cross-task-reviewer.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"cross-task-reviewer.d.ts","sourceRoot":"","sources":["../../../src/planning/agents/cross-task-reviewer.ts"],"names":[],"mappings":""}
@@ -1,20 +0,0 @@
1
- /**
2
- * Sprint Planning Prompt
3
- *
4
- * Uses XML system message structure to provide clear, structured instructions
5
- * to the AI for sprint planning from a CEO directive.
6
- *
7
- * The AI agent writes the plan JSON file directly to the plans directory.
8
- */
9
- export interface PlannerInput {
10
- directive: string;
11
- feedback?: string;
12
- /** Absolute path to the plans directory (e.g. /project/.locus/plans) */
13
- plansDir: string;
14
- /** Pre-generated plan ID (e.g. plan-1234567890) */
15
- planId: string;
16
- /** File name slug derived from the plan name */
17
- fileName: string;
18
- }
19
- export declare function buildPlannerPrompt(input: PlannerInput): string;
20
- //# sourceMappingURL=planner.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"planner.d.ts","sourceRoot":"","sources":["../../../src/planning/agents/planner.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,MAAM,WAAW,YAAY;IAC3B,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,wEAAwE;IACxE,QAAQ,EAAE,MAAM,CAAC;IACjB,mDAAmD;IACnD,MAAM,EAAE,MAAM,CAAC;IACf,gDAAgD;IAChD,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,YAAY,GAAG,MAAM,CAoE9D"}
@@ -1 +0,0 @@
1
- //# sourceMappingURL=sprint-organizer.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"sprint-organizer.d.ts","sourceRoot":"","sources":["../../../src/planning/agents/sprint-organizer.ts"],"names":[],"mappings":""}
@@ -1 +0,0 @@
1
- //# sourceMappingURL=tech-lead.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"tech-lead.d.ts","sourceRoot":"","sources":["../../../src/planning/agents/tech-lead.ts"],"names":[],"mappings":""}
@@ -1,4 +0,0 @@
1
- export { PlanManager } from "./plan-manager.js";
2
- export { PlanningMeeting, type PlanningMeetingConfig, type PlanningMeetingResult, } from "./planning-meeting.js";
3
- export { type PlannedTask, parseSprintPlanFromAI, plannedTasksToCreatePayloads, type SprintPlan, type SprintPlanRisk, sprintPlanToMarkdown, } from "./sprint-plan.js";
4
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/planning/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EACL,eAAe,EACf,KAAK,qBAAqB,EAC1B,KAAK,qBAAqB,GAC3B,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EACL,KAAK,WAAW,EAChB,qBAAqB,EACrB,4BAA4B,EAC5B,KAAK,UAAU,EACf,KAAK,cAAc,EACnB,oBAAoB,GACrB,MAAM,kBAAkB,CAAC"}
@@ -1,51 +0,0 @@
1
- import type { Sprint, Task } from "@locusai/shared";
2
- import type { LocusClient } from "../index.js";
3
- import { type SprintPlan } from "./sprint-plan.js";
4
- /**
5
- * Manages the lifecycle of sprint plans:
6
- * save, load, list, approve, reject, cancel.
7
- */
8
- export declare class PlanManager {
9
- private plansDir;
10
- constructor(projectPath: string);
11
- /**
12
- * Save a sprint plan to disk as both JSON (for machine) and Markdown (for human).
13
- */
14
- save(plan: SprintPlan): string;
15
- /**
16
- * Load a plan by ID or slug.
17
- */
18
- load(idOrSlug: string): SprintPlan | null;
19
- /**
20
- * List all plans, optionally filtered by status.
21
- */
22
- list(status?: SprintPlan["status"]): SprintPlan[];
23
- /**
24
- * Approve a plan: create a sprint and tasks via the API.
25
- * Returns the created sprint and tasks.
26
- */
27
- approve(idOrSlug: string, client: LocusClient, workspaceId: string): Promise<{
28
- sprint: Sprint;
29
- tasks: Task[];
30
- }>;
31
- /**
32
- * Reject a plan with feedback. The plan is marked as rejected
33
- * and the feedback is stored for re-planning.
34
- */
35
- reject(idOrSlug: string, feedback: string): SprintPlan;
36
- /**
37
- * Cancel a plan. Removes it from the pending list.
38
- */
39
- cancel(idOrSlug: string): void;
40
- /**
41
- * Delete a plan's files entirely.
42
- */
43
- delete(idOrSlug: string): void;
44
- /**
45
- * Get the markdown content of a plan for display.
46
- */
47
- getMarkdown(idOrSlug: string): string | null;
48
- private ensurePlansDir;
49
- private slugify;
50
- }
51
- //# sourceMappingURL=plan-manager.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"plan-manager.d.ts","sourceRoot":"","sources":["../../src/planning/plan-manager.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AAEpD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC/C,OAAO,EAEL,KAAK,UAAU,EAEhB,MAAM,kBAAkB,CAAC;AAE1B;;;GAGG;AACH,qBAAa,WAAW;IACtB,OAAO,CAAC,QAAQ,CAAS;gBAEb,WAAW,EAAE,MAAM;IAI/B;;OAEG;IACH,IAAI,CAAC,IAAI,EAAE,UAAU,GAAG,MAAM;IAa9B;;OAEG;IACH,IAAI,CAAC,QAAQ,EAAE,MAAM,GAAG,UAAU,GAAG,IAAI;IAoBzC;;OAEG;IACH,IAAI,CAAC,MAAM,CAAC,EAAE,UAAU,CAAC,QAAQ,CAAC,GAAG,UAAU,EAAE;IA4BjD;;;OAGG;IACG,OAAO,CACX,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,WAAW,EACnB,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,IAAI,EAAE,CAAA;KAAE,CAAC;IAoC7C;;;OAGG;IACH,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,UAAU;IAmBtD;;OAEG;IACH,MAAM,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IAW9B;;OAEG;IACH,MAAM,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IA6B9B;;OAEG;IACH,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;IAM5C,OAAO,CAAC,cAAc;IAMtB,OAAO,CAAC,OAAO;CAMhB"}
@@ -1,34 +0,0 @@
1
- import type { LogFn } from "../ai/factory.js";
2
- import type { AiRunner } from "../ai/runner.js";
3
- import type { SprintPlan } from "./sprint-plan.js";
4
- export interface PlanningMeetingConfig {
5
- projectPath: string;
6
- aiRunner: AiRunner;
7
- log?: LogFn;
8
- }
9
- export interface PlanningMeetingResult {
10
- plan: SprintPlan;
11
- /** Raw output from the planning team for debugging/transparency */
12
- rawOutput: string;
13
- }
14
- /**
15
- * Orchestrates a single-phase planning meeting where 3 AI team members
16
- * (Architect, Tech Lead, Sprint Organizer) collaborate in one pass
17
- * to produce a sprint plan.
18
- *
19
- * Flow: CEO Directive → Planning Team (Architect + Tech Lead + Sprint Organizer) → Sprint Plan
20
- */
21
- export declare class PlanningMeeting {
22
- private projectPath;
23
- private aiRunner;
24
- private log;
25
- constructor(config: PlanningMeetingConfig);
26
- /**
27
- * Run the planning meeting.
28
- *
29
- * The AI agent writes the plan JSON file directly to .locus/plans/
30
- * using its file writing tools. We then read it back from disk.
31
- */
32
- run(directive: string, feedback?: string): Promise<PlanningMeetingResult>;
33
- }
34
- //# sourceMappingURL=planning-meeting.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"planning-meeting.d.ts","sourceRoot":"","sources":["../../src/planning/planning-meeting.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAE9C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAGhD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAEnD,MAAM,WAAW,qBAAqB;IACpC,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,QAAQ,CAAC;IACnB,GAAG,CAAC,EAAE,KAAK,CAAC;CACb;AAED,MAAM,WAAW,qBAAqB;IACpC,IAAI,EAAE,UAAU,CAAC;IACjB,mEAAmE;IACnE,SAAS,EAAE,MAAM,CAAC;CACnB;AAED;;;;;;GAMG;AACH,qBAAa,eAAe;IAC1B,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,QAAQ,CAAW;IAC3B,OAAO,CAAC,GAAG,CAAQ;gBAEP,MAAM,EAAE,qBAAqB;IAMzC;;;;;OAKG;IACG,GAAG,CACP,SAAS,EAAE,MAAM,EACjB,QAAQ,CAAC,EAAE,MAAM,GAChB,OAAO,CAAC,qBAAqB,CAAC;CAsDlC"}
@@ -1,51 +0,0 @@
1
- import { type AssigneeRole, type CreateTask, type TaskPriority } from "@locusai/shared";
2
- export interface PlannedTask {
3
- /** Sequential index within the plan (1-based) */
4
- index: number;
5
- title: string;
6
- description: string;
7
- assigneeRole: AssigneeRole;
8
- priority: TaskPriority;
9
- /** Relative complexity: 1 (trivial) to 5 (very complex) */
10
- complexity: number;
11
- acceptanceCriteria: string[];
12
- labels: string[];
13
- }
14
- export interface SprintPlanRisk {
15
- description: string;
16
- mitigation: string;
17
- severity: "low" | "medium" | "high";
18
- }
19
- export interface SprintPlan {
20
- id: string;
21
- name: string;
22
- goal: string;
23
- directive: string;
24
- tasks: PlannedTask[];
25
- risks: SprintPlanRisk[];
26
- estimatedDays: number;
27
- status: "pending" | "approved" | "rejected" | "cancelled";
28
- feedback?: string;
29
- createdAt: string;
30
- updatedAt: string;
31
- }
32
- /**
33
- * Render a sprint plan as readable markdown for CEO review.
34
- */
35
- export declare function sprintPlanToMarkdown(plan: SprintPlan): string;
36
- /**
37
- * Convert planned tasks to API-ready CreateTask payloads.
38
- * Sets the `order` field based on plan index so dispatch respects the planned ordering.
39
- */
40
- export declare function plannedTasksToCreatePayloads(plan: SprintPlan, sprintId: string): CreateTask[];
41
- /**
42
- * Parse a sprint plan from raw LLM output text.
43
- *
44
- * Uses Zod schemas to validate the JSON structure instead of manual
45
- * type assertions. This provides:
46
- * - Clear error messages when the LLM produces malformed output
47
- * - Automatic defaults for missing fields
48
- * - Type-safe parsing without manual casting
49
- */
50
- export declare function parseSprintPlanFromAI(raw: string, directive: string): SprintPlan;
51
- //# sourceMappingURL=sprint-plan.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"sprint-plan.d.ts","sourceRoot":"","sources":["../../src/planning/sprint-plan.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,YAAY,EACjB,KAAK,UAAU,EACf,KAAK,YAAY,EAElB,MAAM,iBAAiB,CAAC;AA8CzB,MAAM,WAAW,WAAW;IAC1B,iDAAiD;IACjD,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,YAAY,CAAC;IAC3B,QAAQ,EAAE,YAAY,CAAC;IACvB,2DAA2D;IAC3D,UAAU,EAAE,MAAM,CAAC;IACnB,kBAAkB,EAAE,MAAM,EAAE,CAAC;IAC7B,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB;AAED,MAAM,WAAW,cAAc;IAC7B,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,CAAC;CACrC;AAED,MAAM,WAAW,UAAU;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,WAAW,EAAE,CAAC;IACrB,KAAK,EAAE,cAAc,EAAE,CAAC;IACxB,aAAa,EAAE,MAAM,CAAC;IACtB,MAAM,EAAE,SAAS,GAAG,UAAU,GAAG,UAAU,GAAG,WAAW,CAAC;IAC1D,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;CACnB;AAMD;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,UAAU,GAAG,MAAM,CAiE7D;AAED;;;GAGG;AACH,wBAAgB,4BAA4B,CAC1C,IAAI,EAAE,UAAU,EAChB,QAAQ,EAAE,MAAM,GACf,UAAU,EAAE,CAgBd;AAMD;;;;;;;;GAQG;AACH,wBAAgB,qBAAqB,CACnC,GAAG,EAAE,MAAM,EACX,SAAS,EAAE,MAAM,GAChB,UAAU,CAiCZ"}
@@ -1,62 +0,0 @@
1
- /**
2
- * Simple ANSI color utility for terminal output
3
- * Dependency-free and works in Node.js/Bun environments
4
- */
5
- declare const colors: {
6
- reset: string;
7
- bold: string;
8
- dim: string;
9
- italic: string;
10
- underline: string;
11
- black: string;
12
- red: string;
13
- green: string;
14
- yellow: string;
15
- blue: string;
16
- magenta: string;
17
- cyan: string;
18
- white: string;
19
- gray: string;
20
- brightRed: string;
21
- brightGreen: string;
22
- brightYellow: string;
23
- brightBlue: string;
24
- brightMagenta: string;
25
- brightCyan: string;
26
- brightWhite: string;
27
- bgBlack: string;
28
- bgRed: string;
29
- bgGreen: string;
30
- bgYellow: string;
31
- bgBlue: string;
32
- bgMagenta: string;
33
- bgCyan: string;
34
- bgWhite: string;
35
- };
36
- type ColorName = keyof typeof colors;
37
- export declare const c: {
38
- text: (text: string, ...colorNames: ColorName[]) => string;
39
- bold: (t: string) => string;
40
- dim: (t: string) => string;
41
- red: (t: string) => string;
42
- green: (t: string) => string;
43
- yellow: (t: string) => string;
44
- blue: (t: string) => string;
45
- magenta: (t: string) => string;
46
- cyan: (t: string) => string;
47
- gray: (t: string) => string;
48
- white: (t: string) => string;
49
- brightBlue: (t: string) => string;
50
- bgBlue: (t: string) => string;
51
- success: (t: string) => string;
52
- error: (t: string) => string;
53
- warning: (t: string) => string;
54
- info: (t: string) => string;
55
- primary: (t: string) => string;
56
- secondary: (t: string) => string;
57
- header: (t: string) => string;
58
- step: (t: string) => string;
59
- underline: (t: string) => string;
60
- };
61
- export {};
62
- //# sourceMappingURL=colors.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"colors.d.ts","sourceRoot":"","sources":["../../src/utils/colors.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAKH,QAAA,MAAM,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAmCX,CAAC;AAEF,KAAK,SAAS,GAAG,MAAM,OAAO,MAAM,CAAC;AAErC,eAAO,MAAM,CAAC;iBACC,MAAM,iBAAiB,SAAS,EAAE;cAMrC,MAAM;aACP,MAAM;aACN,MAAM;eACJ,MAAM;gBACL,MAAM;cACR,MAAM;iBACH,MAAM;cACT,MAAM;cACN,MAAM;eAEL,MAAM;oBACD,MAAM;gBACV,MAAM;iBAGL,MAAM;eACR,MAAM;iBACJ,MAAM;cACT,MAAM;iBACH,MAAM;mBACJ,MAAM;gBACT,MAAM;cACR,MAAM;mBACD,MAAM;CACtB,CAAC"}
@@ -1,10 +0,0 @@
1
- /**
2
- * Extract a JSON object string from LLM output.
3
- *
4
- * Handles common LLM output patterns:
5
- * - Pure JSON
6
- * - JSON wrapped in markdown code fences
7
- * - JSON preceded/followed by prose text
8
- */
9
- export declare function extractJsonFromLLMOutput(raw: string): string;
10
- //# sourceMappingURL=json-extractor.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"json-extractor.d.ts","sourceRoot":"","sources":["../../src/utils/json-extractor.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,wBAAgB,wBAAwB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAiD5D"}
@@ -1,15 +0,0 @@
1
- /**
2
- * Build a PATH string that includes common CLI binary directories
3
- * in addition to the current process PATH. Existing entries take priority.
4
- */
5
- export declare function getAugmentedPath(): string;
6
- /**
7
- * Returns a copy of the current process.env with an augmented PATH.
8
- * Use this when spawning CLI tools (claude, codex) to ensure they
9
- * can be found even when running from restricted environments.
10
- *
11
- * Strips environment variables that interfere with spawned CLI
12
- * processes (e.g. CLAUDECODE which triggers nested-session guards).
13
- */
14
- export declare function getAugmentedEnv(overrides?: Record<string, string>): NodeJS.ProcessEnv;
15
- //# sourceMappingURL=resolve-bin.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"resolve-bin.d.ts","sourceRoot":"","sources":["../../src/utils/resolve-bin.ts"],"names":[],"mappings":"AA4GA;;;GAGG;AACH,wBAAgB,gBAAgB,IAAI,MAAM,CA2BzC;AASD;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAC7B,SAAS,GAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAM,GACrC,MAAM,CAAC,UAAU,CAYnB"}
@@ -1,8 +0,0 @@
1
- export interface RetryOptions {
2
- maxRetries?: number;
3
- initialDelay?: number;
4
- maxDelay?: number;
5
- factor?: number;
6
- retryCondition?: (error: unknown) => boolean;
7
- }
8
- //# sourceMappingURL=retry.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"retry.d.ts","sourceRoot":"","sources":["../../src/utils/retry.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,YAAY;IAC3B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,cAAc,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,OAAO,CAAC;CAC9C"}
@@ -1,14 +0,0 @@
1
- import { z } from "zod";
2
- /**
3
- * Parse raw LLM output into a typed object validated by a Zod schema.
4
- *
5
- * Steps:
6
- * 1. Extract JSON from the raw LLM text (handles markdown blocks, surrounding prose)
7
- * 2. Parse the extracted string with JSON.parse
8
- * 3. Validate + coerce through the provided Zod schema
9
- *
10
- * On failure, throws with an actionable error message that includes
11
- * the Zod validation issues so callers can log or surface them.
12
- */
13
- export declare function parseJsonWithSchema<T extends z.ZodType>(raw: string, schema: T): z.output<T>;
14
- //# sourceMappingURL=structured-output.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"structured-output.d.ts","sourceRoot":"","sources":["../../src/utils/structured-output.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB;;;;;;;;;;GAUG;AACH,wBAAgB,mBAAmB,CAAC,CAAC,SAAS,CAAC,CAAC,OAAO,EACrD,GAAG,EAAE,MAAM,EACX,MAAM,EAAE,CAAC,GACR,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CA2Bb"}