openplanr 0.3.0 → 0.5.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/agents/cursor-agent.d.ts.map +1 -1
- package/dist/agents/cursor-agent.js +2 -2
- package/dist/agents/cursor-agent.js.map +1 -1
- package/dist/agents/implementation-bridge.d.ts.map +1 -1
- package/dist/agents/implementation-bridge.js +6 -8
- package/dist/agents/implementation-bridge.js.map +1 -1
- package/dist/ai/codebase/file-reader.js +7 -7
- package/dist/ai/codebase/file-reader.js.map +1 -1
- package/dist/ai/codebase/tree-generator.js +4 -4
- package/dist/ai/codebase/tree-generator.js.map +1 -1
- package/dist/ai/prompts/prompt-builder.d.ts +4 -1
- package/dist/ai/prompts/prompt-builder.d.ts.map +1 -1
- package/dist/ai/prompts/prompt-builder.js +6 -2
- package/dist/ai/prompts/prompt-builder.js.map +1 -1
- package/dist/ai/prompts/system-prompts.d.ts +1 -1
- package/dist/ai/prompts/system-prompts.d.ts.map +1 -1
- package/dist/ai/prompts/system-prompts.js +8 -2
- package/dist/ai/prompts/system-prompts.js.map +1 -1
- package/dist/ai/providers/anthropic-provider.d.ts +3 -1
- package/dist/ai/providers/anthropic-provider.d.ts.map +1 -1
- package/dist/ai/providers/anthropic-provider.js +18 -2
- package/dist/ai/providers/anthropic-provider.js.map +1 -1
- package/dist/ai/providers/openai-provider.d.ts +3 -1
- package/dist/ai/providers/openai-provider.d.ts.map +1 -1
- package/dist/ai/providers/openai-provider.js +28 -2
- package/dist/ai/providers/openai-provider.js.map +1 -1
- package/dist/ai/schemas/ai-response-schemas.d.ts +28 -328
- package/dist/ai/schemas/ai-response-schemas.d.ts.map +1 -1
- package/dist/ai/schemas/ai-response-schemas.js +1 -1
- package/dist/ai/schemas/ai-response-schemas.js.map +1 -1
- package/dist/ai/types.d.ts +28 -0
- package/dist/ai/types.d.ts.map +1 -1
- package/dist/ai/types.js +19 -0
- package/dist/ai/types.js.map +1 -1
- package/dist/cli/commands/config.d.ts.map +1 -1
- package/dist/cli/commands/config.js +14 -7
- package/dist/cli/commands/config.js.map +1 -1
- package/dist/cli/commands/epic.d.ts.map +1 -1
- package/dist/cli/commands/epic.js +3 -2
- package/dist/cli/commands/epic.js.map +1 -1
- package/dist/cli/commands/feature.d.ts.map +1 -1
- package/dist/cli/commands/feature.js +2 -1
- package/dist/cli/commands/feature.js.map +1 -1
- package/dist/cli/commands/init.d.ts.map +1 -1
- package/dist/cli/commands/init.js +3 -2
- package/dist/cli/commands/init.js.map +1 -1
- package/dist/cli/commands/plan.d.ts.map +1 -1
- package/dist/cli/commands/plan.js +5 -4
- package/dist/cli/commands/plan.js.map +1 -1
- package/dist/cli/commands/refine.d.ts +1 -0
- package/dist/cli/commands/refine.d.ts.map +1 -1
- package/dist/cli/commands/refine.js +140 -54
- package/dist/cli/commands/refine.js.map +1 -1
- package/dist/cli/commands/story.d.ts.map +1 -1
- package/dist/cli/commands/story.js +2 -1
- package/dist/cli/commands/story.js.map +1 -1
- package/dist/cli/commands/task.d.ts.map +1 -1
- package/dist/cli/commands/task.js +3 -2
- package/dist/cli/commands/task.js.map +1 -1
- package/dist/models/schema.d.ts +39 -95
- package/dist/models/schema.d.ts.map +1 -1
- package/dist/services/ai-service.d.ts +12 -5
- package/dist/services/ai-service.d.ts.map +1 -1
- package/dist/services/ai-service.js +86 -51
- package/dist/services/ai-service.js.map +1 -1
- package/dist/services/credential-backends.d.ts +41 -0
- package/dist/services/credential-backends.d.ts.map +1 -0
- package/dist/services/credential-backends.js +208 -0
- package/dist/services/credential-backends.js.map +1 -0
- package/dist/services/credentials-service.d.ts +38 -14
- package/dist/services/credentials-service.d.ts.map +1 -1
- package/dist/services/credentials-service.js +132 -39
- package/dist/services/credentials-service.js.map +1 -1
- package/dist/utils/fs.js +8 -8
- package/dist/utils/fs.js.map +1 -1
- package/dist/utils/logger.d.ts +9 -0
- package/dist/utils/logger.d.ts.map +1 -1
- package/dist/utils/logger.js +32 -0
- package/dist/utils/logger.js.map +1 -1
- package/package.json +10 -12
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"task.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/task.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"task.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/task.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAoBpC,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,OAAO,QA6HnD"}
|
|
@@ -13,6 +13,7 @@ import { isAIConfigured, getAIProvider, generateStreamingJSON } from '../../serv
|
|
|
13
13
|
import { promptText, promptMultiText, promptConfirm } from '../../services/prompt-service.js';
|
|
14
14
|
import { buildTasksPrompt } from '../../ai/prompts/prompt-builder.js';
|
|
15
15
|
import { aiTasksResponseSchema } from '../../ai/schemas/ai-response-schemas.js';
|
|
16
|
+
import { TOKEN_BUDGETS } from '../../ai/types.js';
|
|
16
17
|
import { gatherStoryArtifacts, gatherFeatureArtifacts } from '../../services/artifact-gathering.js';
|
|
17
18
|
import { logger } from '../../utils/logger.js';
|
|
18
19
|
import chalk from 'chalk';
|
|
@@ -228,7 +229,7 @@ async function createTasksWithAI(projectDir, config, storyId) {
|
|
|
228
229
|
ctx.scope = { type: 'story', id: storyId };
|
|
229
230
|
const messages = buildTasksPrompt(ctx);
|
|
230
231
|
logger.debug(`Task prompt: ${messages.length} messages, user content ${messages[1]?.content.length ?? 0} chars`);
|
|
231
|
-
const result = await generateStreamingJSON(provider, messages, aiTasksResponseSchema);
|
|
232
|
+
const { result } = await generateStreamingJSON(provider, messages, aiTasksResponseSchema, { maxTokens: TOKEN_BUDGETS.task });
|
|
232
233
|
displayTaskPreview(result);
|
|
233
234
|
const total = result.tasks.reduce((sum, t) => sum + (t.subtasks || []).length + 1, 0);
|
|
234
235
|
const confirmCreate = await promptConfirm(`Create task list with ${total} items?`, true);
|
|
@@ -314,7 +315,7 @@ async function createTasksFromFeature(projectDir, config, featureId) {
|
|
|
314
315
|
ctx.scope = { type: 'feature', id: featureId };
|
|
315
316
|
const messages = buildTasksPrompt(ctx);
|
|
316
317
|
logger.debug(`Task prompt: ${messages.length} messages, user content ${messages[1]?.content.length ?? 0} chars`);
|
|
317
|
-
const result = await generateStreamingJSON(provider, messages, aiTasksResponseSchema);
|
|
318
|
+
const { result } = await generateStreamingJSON(provider, messages, aiTasksResponseSchema, { maxTokens: TOKEN_BUDGETS.taskFeature });
|
|
318
319
|
displayTaskPreview(result);
|
|
319
320
|
const total = result.tasks.reduce((sum, t) => sum + (t.subtasks || []).length + 1, 0);
|
|
320
321
|
const confirmCreate = await promptConfirm(`Create task list with ${total} items?`, true);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"task.js","sourceRoot":"","sources":["../../../src/cli/commands/task.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAGH,OAAO,EAAE,UAAU,EAAE,MAAM,kCAAkC,CAAC;AAC9D,OAAO,EACL,cAAc,EACd,aAAa,EACb,YAAY,EACZ,uBAAuB,EACvB,iBAAiB,GAElB,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AACpG,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,kCAAkC,CAAC;AAC9F,OAAO,EAAE,gBAAgB,EAAE,MAAM,oCAAoC,CAAC;AACtE,OAAO,EAAE,qBAAqB,EAAE,MAAM,yCAAyC,CAAC;AAChF,OAAO,EAAE,oBAAoB,EAAE,sBAAsB,EAAE,MAAM,sCAAsC,CAAC;AACpG,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAC/C,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B,MAAM,UAAU,mBAAmB,CAAC,OAAgB;IAClD,MAAM,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,WAAW,CAAC,cAAc,CAAC,CAAC;IAEjE,IAAI;SACD,OAAO,CAAC,QAAQ,CAAC;SACjB,WAAW,CAAC,2CAA2C,CAAC;SACxD,MAAM,CAAC,mBAAmB,EAAE,qCAAqC,CAAC;SAClE,MAAM,CAAC,uBAAuB,EAAE,uEAAuE,CAAC;SACxG,MAAM,CAAC,iBAAiB,EAAE,iBAAiB,CAAC;SAC5C,MAAM,CAAC,UAAU,EAAE,8CAA8C,CAAC;SAClE,MAAM,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;QACrB,MAAM,UAAU,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC,UAAoB,CAAC;QACvD,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,UAAU,CAAC,CAAC;QAE5C,IAAI,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;YACjC,MAAM,CAAC,KAAK,CAAC,4DAA4D,CAAC,CAAC;YAC3E,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QAED,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACjB,MAAM,WAAW,GAAG,MAAM,YAAY,CAAC,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;YACpF,IAAI,CAAC,WAAW,EAAE,CAAC;gBACjB,MAAM,CAAC,KAAK,CAAC,WAAW,IAAI,CAAC,OAAO,aAAa,CAAC,CAAC;gBACnD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;YAED,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,EAAE,CAAC;gBAC5B,MAAM,CAAC,KAAK,CAAC,4EAA4E,CAAC,CAAC;gBAC3F,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;YACD,MAAM,sBAAsB,CAAC,UAAU,EAAE,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;YAC/D,OAAO;QACT,CAAC;QAED,eAAe;QACf,MAAM,SAAS,GAAG,MAAM,YAAY,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;QAC9E,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,MAAM,CAAC,KAAK,CAAC,cAAc,IAAI,CAAC,KAAK,aAAa,CAAC,CAAC;YACpD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QAED,MAAM,KAAK,GAAG,CAAC,IAAI,CAAC,MAAM,IAAI,cAAc,CAAC,MAAM,CAAC,CAAC;QAErD,IAAI,KAAK,EAAE,CAAC;YACV,MAAM,iBAAiB,CAAC,UAAU,EAAE,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;QAC1D,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,EAAE,CAAC;gBAC5C,MAAM,CAAC,IAAI,CAAC,uCAAuC,CAAC,CAAC;YACvD,CAAC;YACD,MAAM,mBAAmB,CAAC,UAAU,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;QACtD,CAAC;IACH,CAAC,CAAC,CAAC;IAEL,IAAI;SACD,OAAO,CAAC,MAAM,CAAC;SACf,WAAW,CAAC,iBAAiB,CAAC;SAC9B,MAAM,CAAC,mBAAmB,EAAE,oBAAoB,CAAC;SACjD,MAAM,CAAC,KAAK,IAAI,EAAE;QACjB,MAAM,UAAU,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC,UAAoB,CAAC;QACvD,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,UAAU,CAAC,CAAC;QAC5C,MAAM,KAAK,GAAG,MAAM,aAAa,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;QAE9D,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACvB,MAAM,CAAC,IAAI,CAAC,0EAA0E,CAAC,CAAC;YACxF,OAAO;QACT,CAAC;QAED,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;QAC7B,KAAK,MAAM,CAAC,IAAI,KAAK,EAAE,CAAC;YACtB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;QACvC,CAAC;IACH,CAAC,CAAC,CAAC;IAEL,IAAI;SACD,OAAO,CAAC,WAAW,CAAC;SACpB,WAAW,CAAC,uCAAuC,CAAC;SACpD,QAAQ,CAAC,UAAU,EAAE,qEAAqE,CAAC;SAC3F,MAAM,CAAC,oBAAoB,EAAE,0DAA0D,CAAC;SACxF,MAAM,CAAC,QAAQ,EAAE,sCAAsC,CAAC;SACxD,MAAM,CAAC,OAAO,EAAE,8DAA8D,CAAC;SAC/E,MAAM,CAAC,gBAAgB,EAAE,+CAA+C,CAAC;SACzE,MAAM,CAAC,WAAW,EAAE,4CAA4C,CAAC;SACjE,MAAM,CAAC,aAAa,EAAE,2CAA2C,CAAC;SAClE,MAAM,CAAC,KAAK,EAAE,MAAc,EAAE,IAAI,EAAE,EAAE;QACrC,MAAM,UAAU,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC,UAAoB,CAAC;QACvD,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,UAAU,CAAC,CAAC;QAE5C,MAAM,EAAE,qBAAqB,EAAE,GAAG,MAAM,MAAM,CAAC,uCAAuC,CAAC,CAAC;QAExF,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC;YACb,MAAM,QAAQ,GAAG,MAAM,aAAa,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;YACjE,MAAM,UAAU,GAAa,EAAE,CAAC;YAEhC,KAAK,MAAM,CAAC,IAAI,QAAQ,EAAE,CAAC;gBACzB,MAAM,IAAI,GAAG,MAAM,YAAY,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;gBAClE,IAAI,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,OAAO,KAAK,MAAM,EAAE,CAAC;oBACzC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;gBACxB,CAAC;YACH,CAAC;YAED,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC5B,MAAM,CAAC,KAAK,CAAC,iCAAiC,MAAM,GAAG,CAAC,CAAC;gBACzD,OAAO;YACT,CAAC;YAED,MAAM,CAAC,OAAO,CAAC,oBAAoB,UAAU,CAAC,MAAM,mBAAmB,MAAM,EAAE,CAAC,CAAC;YAEjF,KAAK,MAAM,GAAG,IAAI,UAAU,EAAE,CAAC;gBAC7B,MAAM,CAAC,OAAO,CAAC,SAAS,GAAG,MAAM,CAAC,CAAC;gBACnC,MAAM,qBAAqB,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,EAAE;oBACnD,KAAK,EAAE,IAAI,CAAC,KAAK;oBACjB,MAAM,EAAE,IAAI,CAAC,MAAM;oBACnB,QAAQ,EAAE,IAAI,CAAC,QAAQ;iBACxB,CAAC,CAAC;YACL,CAAC;QACH,CAAC;aAAM,CAAC;YACN,MAAM,qBAAqB,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE;gBACtD,OAAO,EAAE,IAAI,CAAC,OAAO;gBACrB,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,QAAQ,EAAE,IAAI,CAAC,QAAQ;aACxB,CAAC,CAAC;QACL,CAAC;IACH,CAAC,CAAC,CAAC;AACP,CAAC;AAED,8EAA8E;AAC9E,kBAAkB;AAClB,8EAA8E;AAE9E,SAAS,kBAAkB,CAAC,MAI3B;IACC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IACvC,KAAK,MAAM,SAAS,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;QACrC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,SAAS,CAAC,EAAE,IAAI,SAAS,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;QAChE,KAAK,MAAM,GAAG,IAAI,SAAS,CAAC,QAAQ,IAAI,EAAE,EAAE,CAAC;YAC3C,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,GAAG,CAAC,EAAE,IAAI,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;QACvD,CAAC;IACH,CAAC;IAED,IAAI,MAAM,CAAC,yBAAyB,IAAI,MAAM,CAAC,yBAAyB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACpF,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAChB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,gCAAgC,CAAC,CAAC,CAAC;QAC1D,KAAK,MAAM,EAAE,IAAI,MAAM,CAAC,yBAAyB,EAAE,CAAC;YAClD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC,SAAS,KAAK,EAAE,CAAC,aAAa,QAAQ,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;QACnG,CAAC;IACH,CAAC;IAED,IAAI,MAAM,CAAC,aAAa,IAAI,MAAM,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC5D,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAChB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,CAAC;QAC7C,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,aAAa,EAAE,CAAC;YACrC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,IAAI,MAAM,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;QACxD,CAAC;IACH,CAAC;IACD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;AACzC,CAAC;AAED,SAAS,cAAc,CAAC,MAEvB;IACC,OAAO,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;QAC/B,EAAE,EAAE,EAAE,CAAC,EAAE;QACT,KAAK,EAAE,EAAE,CAAC,KAAK;QACf,MAAM,EAAE,SAAkB;QAC1B,QAAQ,EAAE,CAAC,EAAE,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;YACzC,EAAE,EAAE,EAAE,CAAC,EAAE;YACT,KAAK,EAAE,EAAE,CAAC,KAAK;YACf,MAAM,EAAE,SAAkB;YAC1B,QAAQ,EAAE,EAAE;SACb,CAAC,CAAC;KACJ,CAAC,CAAC,CAAC;AACN,CAAC;AAED,SAAS,oBAAoB,CAC3B,GAAsE,EACtE,MAAuB;IAEvB,MAAM,OAAO,GAA0C,EAAE,CAAC;IAC1D,KAAK,MAAM,CAAC,IAAI,GAAG,CAAC,OAAO,EAAE,CAAC;QAC5B,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,GAAG,MAAM,CAAC,WAAW,CAAC,KAAK,YAAY,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;IAC5F,CAAC;IACD,KAAK,MAAM,CAAC,IAAI,GAAG,CAAC,gBAAgB,EAAE,CAAC;QACrC,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,GAAG,MAAM,CAAC,WAAW,CAAC,KAAK,YAAY,CAAC,CAAC,OAAO,kBAAkB,EAAE,CAAC,CAAC;IAC9G,CAAC;IACD,IAAI,GAAG,CAAC,UAAU,EAAE,CAAC;QACnB,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,GAAG,MAAM,CAAC,WAAW,CAAC,KAAK,YAAY,EAAE,CAAC,CAAC;IACnF,CAAC;IACD,IAAI,GAAG,CAAC,OAAO,EAAE,CAAC;QAChB,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,CAAC,WAAW,CAAC,KAAK,SAAS,EAAE,CAAC,CAAC;IAC7E,CAAC;IACD,KAAK,MAAM,CAAC,IAAI,GAAG,CAAC,IAAI,EAAE,CAAC;QACzB,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,MAAM,CAAC,WAAW,CAAC,KAAK,SAAS,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;IAClF,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,8EAA8E;AAC9E,+CAA+C;AAC/C,8EAA8E;AAE9E,KAAK,UAAU,iBAAiB,CAC9B,UAAkB,EAClB,MAAuB,EACvB,OAAe;IAEf,MAAM,CAAC,OAAO,CAAC,iCAAiC,OAAO,GAAG,CAAC,CAAC;IAE5D,6CAA6C;IAC7C,MAAM,aAAa,GAAG,MAAM,aAAa,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IACtE,MAAM,UAAU,GAAyC,EAAE,CAAC;IAC5D,KAAK,MAAM,CAAC,IAAI,aAAa,EAAE,CAAC;QAC9B,MAAM,IAAI,GAAG,MAAM,YAAY,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;QAClE,IAAI,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,OAAO,KAAK,OAAO,EAAE,CAAC;YAC1C,UAAU,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,KAAK,EAAG,IAAI,CAAC,IAAI,CAAC,KAAgB,IAAI,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;QAC/E,CAAC;IACH,CAAC;IACD,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC1B,MAAM,CAAC,IAAI,CAAC,GAAG,OAAO,gBAAgB,UAAU,CAAC,MAAM,gBAAgB,CAAC,CAAC;QACzE,KAAK,MAAM,CAAC,IAAI,UAAU,EAAE,CAAC;YAC3B,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;QAClD,CAAC;QACD,MAAM,cAAc,GAAG,MAAM,aAAa,CAAC,4BAA4B,EAAE,KAAK,CAAC,CAAC;QAChF,IAAI,CAAC,cAAc,EAAE,CAAC;YACpB,MAAM,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC;YACxC,OAAO;QACT,CAAC;IACH,CAAC;IAED,MAAM,CAAC,GAAG,CAAC,6CAA6C,CAAC,CAAC;IAE1D,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,MAAM,oBAAoB,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;QAEpE,MAAM,UAAU,GAAG;YACjB,GAAG,GAAG,CAAC,OAAO,CAAC,MAAM,UAAU;YAC/B,GAAG,GAAG,CAAC,gBAAgB,CAAC,MAAM,gBAAgB;YAC9C,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI;YACnC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI;YAC7B,GAAG,GAAG,CAAC,IAAI,CAAC,MAAM,OAAO;YACzB,GAAG,CAAC,eAAe,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,IAAI;SAChD,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAClB,MAAM,CAAC,GAAG,CAAC,SAAS,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC7C,MAAM,CAAC,GAAG,CAAC,0CAA0C,CAAC,CAAC;QAEvD,MAAM,QAAQ,GAAG,MAAM,aAAa,CAAC,MAAM,CAAC,CAAC;QAC7C,GAAG,CAAC,KAAK,GAAG,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC;QAC3C,MAAM,QAAQ,GAAG,gBAAgB,CAAC,GAAG,CAAC,CAAC;QACvC,MAAM,CAAC,KAAK,CAAC,gBAAgB,QAAQ,CAAC,MAAM,2BAA2B,QAAQ,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,MAAM,IAAI,CAAC,QAAQ,CAAC,CAAC;QACjH,MAAM,MAAM,GAAG,MAAM,qBAAqB,CAAC,QAAQ,EAAE,QAAQ,EAAE,qBAAqB,CAAC,CAAC;QAEtF,kBAAkB,CAAC,MAAM,CAAC,CAAC;QAE3B,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;QACtF,MAAM,aAAa,GAAG,MAAM,aAAa,CAAC,yBAAyB,KAAK,SAAS,EAAE,IAAI,CAAC,CAAC;QAEzF,IAAI,CAAC,aAAa,EAAE,CAAC;YACnB,MAAM,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC;YACxC,OAAO;QACT,CAAC;QAED,MAAM,KAAK,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC;QACrC,MAAM,eAAe,GAAG,oBAAoB,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;QAC1D,MAAM,aAAa,GAAG,MAAM,uBAAuB,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;QAE1F,MAAM,EAAE,EAAE,EAAE,QAAQ,EAAE,GAAG,MAAM,cAAc,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,wBAAwB,EAAE;YAClG,KAAK,EAAE,MAAM,CAAC,KAAK;YACnB,OAAO;YACP,aAAa;YACb,KAAK;YACL,eAAe;YACf,yBAAyB,EAAE,MAAM,CAAC,yBAAyB;YAC3D,aAAa,EAAE,MAAM,CAAC,aAAa;SACpC,CAAC,CAAC;QAEH,MAAM,iBAAiB,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;QACxF,MAAM,CAAC,OAAO,CAAC,qBAAqB,EAAE,KAAK,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;QAC3D,MAAM,CAAC,GAAG,CAAC,KAAK,QAAQ,EAAE,CAAC,CAAC;QAC5B,MAAM,CAAC,GAAG,CAAC,KAAK,KAAK,gBAAgB,CAAC,CAAC;QACvC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACf,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;QAC9B,MAAM,CAAC,GAAG,CAAC,0BAA0B,EAAE,mCAAmC,CAAC,CAAC;QAC5E,MAAM,CAAC,GAAG,CAAC,0BAA0B,EAAE,8CAA8C,CAAC,CAAC;QACvF,MAAM,CAAC,GAAG,CAAC,0BAA0B,EAAE,0CAA0C,CAAC,CAAC;QACnF,MAAM,CAAC,GAAG,CAAC,0BAA0B,EAAE,iDAAiD,CAAC,CAAC;IAC5F,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,MAAM,CAAC,oBAAoB,CAAC,CAAC;QACvD,IAAI,GAAG,YAAY,OAAO,EAAE,CAAC;YAC3B,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;QAChC,CAAC;aAAM,IAAI,GAAG,YAAY,KAAK,EAAE,CAAC;YAChC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAC5B,CAAC;aAAM,CAAC;YACN,MAAM,GAAG,CAAC;QACZ,CAAC;IACH,CAAC;AACH,CAAC;AAED,8EAA8E;AAC9E,wDAAwD;AACxD,8EAA8E;AAE9E,KAAK,UAAU,sBAAsB,CACnC,UAAkB,EAClB,MAAuB,EACvB,SAAiB;IAEjB,MAAM,CAAC,OAAO,CAAC,iCAAiC,SAAS,iBAAiB,CAAC,CAAC;IAE5E,+CAA+C;IAC/C,MAAM,aAAa,GAAG,MAAM,aAAa,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IACtE,MAAM,YAAY,GAAyC,EAAE,CAAC;IAC9D,KAAK,MAAM,CAAC,IAAI,aAAa,EAAE,CAAC;QAC9B,MAAM,IAAI,GAAG,MAAM,YAAY,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;QAClE,IAAI,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;YAC9C,YAAY,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,KAAK,EAAG,IAAI,CAAC,IAAI,CAAC,KAAgB,IAAI,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;QACjF,CAAC;IACH,CAAC;IACD,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC5B,MAAM,CAAC,IAAI,CAAC,GAAG,SAAS,gBAAgB,YAAY,CAAC,MAAM,gBAAgB,CAAC,CAAC;QAC7E,KAAK,MAAM,CAAC,IAAI,YAAY,EAAE,CAAC;YAC7B,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;QAClD,CAAC;QACD,MAAM,cAAc,GAAG,MAAM,aAAa,CAAC,4BAA4B,EAAE,KAAK,CAAC,CAAC;QAChF,IAAI,CAAC,cAAc,EAAE,CAAC;YACpB,MAAM,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC;YACxC,OAAO;QACT,CAAC;IACH,CAAC;IAED,MAAM,CAAC,GAAG,CAAC,yEAAyE,CAAC,CAAC;IAEtF,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,MAAM,sBAAsB,CAAC,UAAU,EAAE,MAAM,EAAE,SAAS,CAAC,CAAC;QAExE,MAAM,KAAK,GAAG;YACZ,GAAG,GAAG,CAAC,OAAO,CAAC,MAAM,UAAU;YAC/B,GAAG,GAAG,CAAC,gBAAgB,CAAC,MAAM,gBAAgB;YAC9C,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI;YACnC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI;YAC7B,GAAG,GAAG,CAAC,IAAI,CAAC,MAAM,OAAO;YACzB,GAAG,CAAC,eAAe,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,IAAI;SAChD,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAClB,MAAM,CAAC,GAAG,CAAC,SAAS,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACxC,MAAM,CAAC,GAAG,CAAC,0CAA0C,CAAC,CAAC;QAEvD,MAAM,QAAQ,GAAG,MAAM,aAAa,CAAC,MAAM,CAAC,CAAC;QAC7C,GAAG,CAAC,KAAK,GAAG,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,EAAE,SAAS,EAAE,CAAC;QAC/C,MAAM,QAAQ,GAAG,gBAAgB,CAAC,GAAG,CAAC,CAAC;QACvC,MAAM,CAAC,KAAK,CAAC,gBAAgB,QAAQ,CAAC,MAAM,2BAA2B,QAAQ,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,MAAM,IAAI,CAAC,QAAQ,CAAC,CAAC;QACjH,MAAM,MAAM,GAAG,MAAM,qBAAqB,CAAC,QAAQ,EAAE,QAAQ,EAAE,qBAAqB,CAAC,CAAC;QAEtF,kBAAkB,CAAC,MAAM,CAAC,CAAC;QAE3B,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;QACtF,MAAM,aAAa,GAAG,MAAM,aAAa,CAAC,yBAAyB,KAAK,SAAS,EAAE,IAAI,CAAC,CAAC;QAEzF,IAAI,CAAC,aAAa,EAAE,CAAC;YACnB,MAAM,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC;YACxC,OAAO;QACT,CAAC;QAED,MAAM,KAAK,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC;QACrC,MAAM,eAAe,GAAG,oBAAoB,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;QAC1D,MAAM,eAAe,GAAG,MAAM,uBAAuB,CAAC,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;QAEhG,MAAM,EAAE,EAAE,EAAE,QAAQ,EAAE,GAAG,MAAM,cAAc,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,wBAAwB,EAAE;YAClG,KAAK,EAAE,MAAM,CAAC,KAAK;YACnB,SAAS;YACT,eAAe;YACf,KAAK;YACL,eAAe;YACf,yBAAyB,EAAE,MAAM,CAAC,yBAAyB;YAC3D,aAAa,EAAE,MAAM,CAAC,aAAa;SACpC,CAAC,CAAC;QAEH,kDAAkD;QAClD,KAAK,MAAM,KAAK,IAAI,GAAG,CAAC,OAAO,EAAE,CAAC;YAChC,MAAM,iBAAiB,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;QAC3F,CAAC;QAED,MAAM,CAAC,OAAO,CAAC,qBAAqB,EAAE,KAAK,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;QAC3D,MAAM,CAAC,GAAG,CAAC,KAAK,QAAQ,EAAE,CAAC,CAAC;QAC5B,MAAM,CAAC,GAAG,CAAC,KAAK,KAAK,eAAe,GAAG,CAAC,OAAO,CAAC,MAAM,UAAU,CAAC,CAAC;QAClE,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACf,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;QAC9B,MAAM,CAAC,GAAG,CAAC,0BAA0B,EAAE,mCAAmC,CAAC,CAAC;QAC5E,MAAM,CAAC,GAAG,CAAC,0BAA0B,EAAE,8CAA8C,CAAC,CAAC;QACvF,MAAM,CAAC,GAAG,CAAC,0BAA0B,EAAE,0CAA0C,CAAC,CAAC;QACnF,MAAM,CAAC,GAAG,CAAC,0BAA0B,EAAE,iDAAiD,CAAC,CAAC;IAC5F,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,MAAM,CAAC,oBAAoB,CAAC,CAAC;QACvD,IAAI,GAAG,YAAY,OAAO,EAAE,CAAC;YAC3B,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;QAChC,CAAC;aAAM,IAAI,GAAG,YAAY,KAAK,EAAE,CAAC;YAChC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAC5B,CAAC;aAAM,CAAC;YACN,MAAM,GAAG,CAAC;QACZ,CAAC;IACH,CAAC;AACH,CAAC;AAED,8EAA8E;AAC9E,mCAAmC;AACnC,8EAA8E;AAE9E,KAAK,UAAU,mBAAmB,CAChC,UAAkB,EAClB,MAAuB,EACvB,IAA4B;IAE5B,MAAM,CAAC,OAAO,CAAC,sBAAsB,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC;IAEpD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,IAAI,CAAC,MAAM,UAAU,CAAC,kBAAkB,EAAE,aAAa,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;IAC9F,MAAM,SAAS,GAAG,MAAM,eAAe,CACrC,kBAAkB,EAClB,0DAA0D,CAC3D,CAAC;IAEF,MAAM,KAAK,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;QACxC,EAAE,EAAE,GAAG,CAAC,GAAG,CAAC,IAAI;QAChB,KAAK,EAAE,IAAI;QACX,MAAM,EAAE,SAAkB;QAC1B,QAAQ,EAAE,EAAE;KACb,CAAC,CAAC,CAAC;IAEJ,MAAM,aAAa,GAAG,MAAM,uBAAuB,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;IAC7F,MAAM,EAAE,EAAE,EAAE,QAAQ,EAAE,GAAG,MAAM,cAAc,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,wBAAwB,EAAE;QAClG,KAAK;QACL,OAAO,EAAE,IAAI,CAAC,KAAK;QACnB,aAAa;QACb,KAAK;KACN,CAAC,CAAC;IAEH,MAAM,iBAAiB,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE,KAAK,CAAC,CAAC;IACpF,MAAM,CAAC,OAAO,CAAC,qBAAqB,EAAE,KAAK,KAAK,EAAE,CAAC,CAAC;IACpD,MAAM,CAAC,GAAG,CAAC,KAAK,QAAQ,EAAE,CAAC,CAAC;IAC5B,MAAM,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,MAAM,gBAAgB,CAAC,CAAC;IAC9C,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IACf,MAAM,CAAC,GAAG,CAAC,8BAA8B,EAAE,EAAE,CAAC,CAAC;AACjD,CAAC"}
|
|
1
|
+
{"version":3,"file":"task.js","sourceRoot":"","sources":["../../../src/cli/commands/task.ts"],"names":[],"mappings":"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"}
|
package/dist/models/schema.d.ts
CHANGED
|
@@ -1,120 +1,64 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
|
-
export declare const targetCLISchema: z.ZodEnum<
|
|
3
|
-
|
|
4
|
-
|
|
2
|
+
export declare const targetCLISchema: z.ZodEnum<{
|
|
3
|
+
cursor: "cursor";
|
|
4
|
+
claude: "claude";
|
|
5
|
+
codex: "codex";
|
|
6
|
+
}>;
|
|
7
|
+
export declare const aiProviderSchema: z.ZodEnum<{
|
|
8
|
+
anthropic: "anthropic";
|
|
9
|
+
openai: "openai";
|
|
10
|
+
ollama: "ollama";
|
|
11
|
+
}>;
|
|
12
|
+
export declare const codingAgentSchema: z.ZodEnum<{
|
|
13
|
+
cursor: "cursor";
|
|
14
|
+
claude: "claude";
|
|
15
|
+
codex: "codex";
|
|
16
|
+
}>;
|
|
5
17
|
export declare const aiConfigSchema: z.ZodObject<{
|
|
6
|
-
provider: z.ZodEnum<
|
|
18
|
+
provider: z.ZodEnum<{
|
|
19
|
+
anthropic: "anthropic";
|
|
20
|
+
openai: "openai";
|
|
21
|
+
ollama: "ollama";
|
|
22
|
+
}>;
|
|
7
23
|
model: z.ZodOptional<z.ZodString>;
|
|
8
24
|
ollamaBaseUrl: z.ZodOptional<z.ZodString>;
|
|
9
|
-
},
|
|
10
|
-
provider: "anthropic" | "openai" | "ollama";
|
|
11
|
-
model?: string | undefined;
|
|
12
|
-
ollamaBaseUrl?: string | undefined;
|
|
13
|
-
}, {
|
|
14
|
-
provider: "anthropic" | "openai" | "ollama";
|
|
15
|
-
model?: string | undefined;
|
|
16
|
-
ollamaBaseUrl?: string | undefined;
|
|
17
|
-
}>;
|
|
25
|
+
}, z.core.$strip>;
|
|
18
26
|
export declare const configSchema: z.ZodObject<{
|
|
19
27
|
projectName: z.ZodString;
|
|
20
|
-
targets: z.ZodArray<z.ZodEnum<
|
|
28
|
+
targets: z.ZodArray<z.ZodEnum<{
|
|
29
|
+
cursor: "cursor";
|
|
30
|
+
claude: "claude";
|
|
31
|
+
codex: "codex";
|
|
32
|
+
}>>;
|
|
21
33
|
outputPaths: z.ZodObject<{
|
|
22
34
|
agile: z.ZodDefault<z.ZodString>;
|
|
23
35
|
cursorRules: z.ZodDefault<z.ZodString>;
|
|
24
36
|
claudeConfig: z.ZodDefault<z.ZodString>;
|
|
25
37
|
codexConfig: z.ZodDefault<z.ZodString>;
|
|
26
|
-
},
|
|
27
|
-
agile: string;
|
|
28
|
-
cursorRules: string;
|
|
29
|
-
claudeConfig: string;
|
|
30
|
-
codexConfig: string;
|
|
31
|
-
}, {
|
|
32
|
-
agile?: string | undefined;
|
|
33
|
-
cursorRules?: string | undefined;
|
|
34
|
-
claudeConfig?: string | undefined;
|
|
35
|
-
codexConfig?: string | undefined;
|
|
36
|
-
}>;
|
|
38
|
+
}, z.core.$strip>;
|
|
37
39
|
idPrefix: z.ZodObject<{
|
|
38
40
|
epic: z.ZodDefault<z.ZodString>;
|
|
39
41
|
feature: z.ZodDefault<z.ZodString>;
|
|
40
42
|
story: z.ZodDefault<z.ZodString>;
|
|
41
43
|
task: z.ZodDefault<z.ZodString>;
|
|
42
|
-
},
|
|
43
|
-
epic: string;
|
|
44
|
-
feature: string;
|
|
45
|
-
story: string;
|
|
46
|
-
task: string;
|
|
47
|
-
}, {
|
|
48
|
-
epic?: string | undefined;
|
|
49
|
-
feature?: string | undefined;
|
|
50
|
-
story?: string | undefined;
|
|
51
|
-
task?: string | undefined;
|
|
52
|
-
}>;
|
|
44
|
+
}, z.core.$strip>;
|
|
53
45
|
ai: z.ZodOptional<z.ZodObject<{
|
|
54
|
-
provider: z.ZodEnum<
|
|
46
|
+
provider: z.ZodEnum<{
|
|
47
|
+
anthropic: "anthropic";
|
|
48
|
+
openai: "openai";
|
|
49
|
+
ollama: "ollama";
|
|
50
|
+
}>;
|
|
55
51
|
model: z.ZodOptional<z.ZodString>;
|
|
56
52
|
ollamaBaseUrl: z.ZodOptional<z.ZodString>;
|
|
57
|
-
},
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
provider: "anthropic" | "openai" | "ollama";
|
|
63
|
-
model?: string | undefined;
|
|
64
|
-
ollamaBaseUrl?: string | undefined;
|
|
53
|
+
}, z.core.$strip>>;
|
|
54
|
+
defaultAgent: z.ZodOptional<z.ZodEnum<{
|
|
55
|
+
cursor: "cursor";
|
|
56
|
+
claude: "claude";
|
|
57
|
+
codex: "codex";
|
|
65
58
|
}>>;
|
|
66
|
-
defaultAgent: z.ZodOptional<z.ZodEnum<["claude", "cursor", "codex"]>>;
|
|
67
59
|
templateOverrides: z.ZodOptional<z.ZodString>;
|
|
68
60
|
author: z.ZodOptional<z.ZodString>;
|
|
69
61
|
createdAt: z.ZodString;
|
|
70
|
-
},
|
|
71
|
-
projectName: string;
|
|
72
|
-
targets: ("cursor" | "claude" | "codex")[];
|
|
73
|
-
outputPaths: {
|
|
74
|
-
agile: string;
|
|
75
|
-
cursorRules: string;
|
|
76
|
-
claudeConfig: string;
|
|
77
|
-
codexConfig: string;
|
|
78
|
-
};
|
|
79
|
-
idPrefix: {
|
|
80
|
-
epic: string;
|
|
81
|
-
feature: string;
|
|
82
|
-
story: string;
|
|
83
|
-
task: string;
|
|
84
|
-
};
|
|
85
|
-
createdAt: string;
|
|
86
|
-
ai?: {
|
|
87
|
-
provider: "anthropic" | "openai" | "ollama";
|
|
88
|
-
model?: string | undefined;
|
|
89
|
-
ollamaBaseUrl?: string | undefined;
|
|
90
|
-
} | undefined;
|
|
91
|
-
defaultAgent?: "cursor" | "claude" | "codex" | undefined;
|
|
92
|
-
templateOverrides?: string | undefined;
|
|
93
|
-
author?: string | undefined;
|
|
94
|
-
}, {
|
|
95
|
-
projectName: string;
|
|
96
|
-
targets: ("cursor" | "claude" | "codex")[];
|
|
97
|
-
outputPaths: {
|
|
98
|
-
agile?: string | undefined;
|
|
99
|
-
cursorRules?: string | undefined;
|
|
100
|
-
claudeConfig?: string | undefined;
|
|
101
|
-
codexConfig?: string | undefined;
|
|
102
|
-
};
|
|
103
|
-
idPrefix: {
|
|
104
|
-
epic?: string | undefined;
|
|
105
|
-
feature?: string | undefined;
|
|
106
|
-
story?: string | undefined;
|
|
107
|
-
task?: string | undefined;
|
|
108
|
-
};
|
|
109
|
-
createdAt: string;
|
|
110
|
-
ai?: {
|
|
111
|
-
provider: "anthropic" | "openai" | "ollama";
|
|
112
|
-
model?: string | undefined;
|
|
113
|
-
ollamaBaseUrl?: string | undefined;
|
|
114
|
-
} | undefined;
|
|
115
|
-
defaultAgent?: "cursor" | "claude" | "codex" | undefined;
|
|
116
|
-
templateOverrides?: string | undefined;
|
|
117
|
-
author?: string | undefined;
|
|
118
|
-
}>;
|
|
62
|
+
}, z.core.$strip>;
|
|
119
63
|
export type ValidatedConfig = z.infer<typeof configSchema>;
|
|
120
64
|
//# sourceMappingURL=schema.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/models/schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,eAAe,
|
|
1
|
+
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/models/schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,eAAe;;;;EAAwC,CAAC;AACrE,eAAO,MAAM,gBAAgB;;;;EAA4C,CAAC;AAC1E,eAAO,MAAM,iBAAiB;;;;EAAwC,CAAC;AAEvE,eAAO,MAAM,cAAc;;;;;;;;iBAIzB,CAAC;AAEH,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAoBvB,CAAC;AAEH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,YAAY,CAAC,CAAC"}
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
* JSON generation with Zod validation and retry logic.
|
|
7
7
|
*/
|
|
8
8
|
import type { ZodSchema } from 'zod';
|
|
9
|
-
import type { AIProvider, AIMessage, AIRequestOptions } from '../ai/types.js';
|
|
9
|
+
import type { AIProvider, AIMessage, AIRequestOptions, AIUsage } from '../ai/types.js';
|
|
10
10
|
import type { OpenPlanrConfig } from '../models/types.js';
|
|
11
11
|
/**
|
|
12
12
|
* Initialize an AI provider from project config.
|
|
@@ -22,8 +22,13 @@ export declare function isAIConfigured(config: OpenPlanrConfig): boolean;
|
|
|
22
22
|
* Returns the fully accumulated text once streaming completes.
|
|
23
23
|
*/
|
|
24
24
|
export declare function streamToTerminal(stream: AsyncIterable<string>): Promise<string>;
|
|
25
|
+
/** Result from AI generation including the parsed data and optional token usage. */
|
|
26
|
+
export interface AIGenerateResult<T> {
|
|
27
|
+
result: T;
|
|
28
|
+
usage?: AIUsage;
|
|
29
|
+
}
|
|
25
30
|
/**
|
|
26
|
-
* Generate a validated JSON response from the AI.
|
|
31
|
+
* Generate a validated JSON response from the AI (non-streaming).
|
|
27
32
|
*
|
|
28
33
|
* Flow:
|
|
29
34
|
* 1. Send messages with JSON mode hint
|
|
@@ -31,10 +36,12 @@ export declare function streamToTerminal(stream: AsyncIterable<string>): Promise
|
|
|
31
36
|
* 3. Validate with Zod schema
|
|
32
37
|
* 4. On failure, retry once with error feedback
|
|
33
38
|
*/
|
|
34
|
-
export declare function generateJSON<T>(provider: AIProvider, messages: AIMessage[], schema: ZodSchema<T>, options?: AIRequestOptions): Promise<T
|
|
39
|
+
export declare function generateJSON<T>(provider: AIProvider, messages: AIMessage[], schema: ZodSchema<T>, options?: AIRequestOptions): Promise<AIGenerateResult<T>>;
|
|
35
40
|
/**
|
|
36
|
-
* Generate JSON with streaming — shows progress
|
|
41
|
+
* Generate JSON with streaming — shows progress spinner in the terminal
|
|
37
42
|
* while the AI generates, then parses the complete response.
|
|
38
43
|
*/
|
|
39
|
-
export declare function generateStreamingJSON<T>(provider: AIProvider, messages: AIMessage[], schema: ZodSchema<T>, options?: AIRequestOptions): Promise<T
|
|
44
|
+
export declare function generateStreamingJSON<T>(provider: AIProvider, messages: AIMessage[], schema: ZodSchema<T>, options?: AIRequestOptions): Promise<AIGenerateResult<T>>;
|
|
45
|
+
/** Accumulate token usage from a provider call into a running total. */
|
|
46
|
+
export declare function accumulateUsage(total: AIUsage, usage?: AIUsage): void;
|
|
40
47
|
//# sourceMappingURL=ai-service.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ai-service.d.ts","sourceRoot":"","sources":["../../src/services/ai-service.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,KAAK,CAAC;AACrC,OAAO,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,gBAAgB,EAAoB,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"ai-service.d.ts","sourceRoot":"","sources":["../../src/services/ai-service.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,KAAK,CAAC;AACrC,OAAO,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,gBAAgB,EAAoB,OAAO,EAAE,MAAM,gBAAgB,CAAC;AACzG,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAK1D;;;GAGG;AACH,wBAAsB,aAAa,CAAC,MAAM,EAAE,eAAe,GAAG,OAAO,CAAC,UAAU,CAAC,CAmBhF;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,eAAe,GAAG,OAAO,CAE/D;AAED;;;GAGG;AACH,wBAAsB,gBAAgB,CACpC,MAAM,EAAE,aAAa,CAAC,MAAM,CAAC,GAC5B,OAAO,CAAC,MAAM,CAAC,CAWjB;AAED,oFAAoF;AACpF,MAAM,WAAW,gBAAgB,CAAC,CAAC;IACjC,MAAM,EAAE,CAAC,CAAC;IACV,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAyFD;;;;;;;;GAQG;AACH,wBAAsB,YAAY,CAAC,CAAC,EAClC,QAAQ,EAAE,UAAU,EACpB,QAAQ,EAAE,SAAS,EAAE,EACrB,MAAM,EAAE,SAAS,CAAC,CAAC,CAAC,EACpB,OAAO,CAAC,EAAE,gBAAgB,GACzB,OAAO,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAU9B;AAED;;;GAGG;AACH,wBAAsB,qBAAqB,CAAC,CAAC,EAC3C,QAAQ,EAAE,UAAU,EACpB,QAAQ,EAAE,SAAS,EAAE,EACrB,MAAM,EAAE,SAAS,CAAC,CAAC,CAAC,EACpB,OAAO,CAAC,EAAE,gBAAgB,GACzB,OAAO,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAe9B;AAcD,wEAAwE;AACxE,wBAAgB,eAAe,CAAC,KAAK,EAAE,OAAO,EAAE,KAAK,CAAC,EAAE,OAAO,GAAG,IAAI,CAKrE"}
|
|
@@ -7,6 +7,7 @@
|
|
|
7
7
|
*/
|
|
8
8
|
import { AIError } from '../ai/errors.js';
|
|
9
9
|
import { resolveApiKey } from './credentials-service.js';
|
|
10
|
+
import { createSpinner, formatUsage } from '../utils/logger.js';
|
|
10
11
|
/**
|
|
11
12
|
* Initialize an AI provider from project config.
|
|
12
13
|
* Dynamically imports the factory to keep non-AI commands fast.
|
|
@@ -45,8 +46,73 @@ export async function streamToTerminal(stream) {
|
|
|
45
46
|
process.stdout.write('\n');
|
|
46
47
|
return chunks.join('');
|
|
47
48
|
}
|
|
49
|
+
// ---------------------------------------------------------------------------
|
|
50
|
+
// Shared helpers
|
|
51
|
+
// ---------------------------------------------------------------------------
|
|
52
|
+
/** Throw a descriptive error when the AI response was truncated. */
|
|
53
|
+
function throwTruncationError(usage, maxTokens, isRetry = false) {
|
|
54
|
+
const prefix = isRetry ? 'AI retry response' : 'AI response';
|
|
55
|
+
const limit = maxTokens != null ? maxTokens.toLocaleString() : 'default';
|
|
56
|
+
throw new AIError(`${prefix} was truncated at ${usage.outputTokens.toLocaleString()} output tokens (hit max_tokens limit of ${limit}). Try reducing the input scope or increasing the token budget.`, 'invalid_response');
|
|
57
|
+
}
|
|
58
|
+
/** Check usage for truncation; throw if truncated. */
|
|
59
|
+
function checkTruncation(usage, maxTokens, isRetry = false) {
|
|
60
|
+
if (usage?.truncated) {
|
|
61
|
+
throwTruncationError(usage, maxTokens, isRetry);
|
|
62
|
+
}
|
|
63
|
+
}
|
|
48
64
|
/**
|
|
49
|
-
*
|
|
65
|
+
* Core generation logic shared by generateJSON and generateStreamingJSON.
|
|
66
|
+
*
|
|
67
|
+
* Accepts a `fetchResponse` callback that performs the initial AI call
|
|
68
|
+
* (sync or streaming), then handles validation, retry, truncation, and spinner.
|
|
69
|
+
*/
|
|
70
|
+
async function generateCore(provider, messages, schema, requestOptions, fetchResponse) {
|
|
71
|
+
let totalUsage = { inputTokens: 0, outputTokens: 0 };
|
|
72
|
+
const spinner = createSpinner('Generating...');
|
|
73
|
+
try {
|
|
74
|
+
// --- First attempt ---
|
|
75
|
+
let rawResponse = await fetchResponse();
|
|
76
|
+
let lastUsage = provider.getLastUsage();
|
|
77
|
+
accumulateUsage(totalUsage, lastUsage);
|
|
78
|
+
checkTruncation(lastUsage, requestOptions.maxTokens);
|
|
79
|
+
const parsed = tryParseAndValidate(rawResponse, schema);
|
|
80
|
+
if (parsed.success) {
|
|
81
|
+
spinner.succeed(`Done${formatUsage(totalUsage)}`);
|
|
82
|
+
return { result: parsed.data, usage: totalUsage };
|
|
83
|
+
}
|
|
84
|
+
// --- Retry once with error feedback ---
|
|
85
|
+
spinner.update('Retrying...');
|
|
86
|
+
const retryMessages = [
|
|
87
|
+
...messages,
|
|
88
|
+
{ role: 'assistant', content: rawResponse },
|
|
89
|
+
{
|
|
90
|
+
role: 'user',
|
|
91
|
+
content: `Your response was not valid JSON or failed validation:\n${parsed.error}\n\nPlease fix and return valid JSON only.`,
|
|
92
|
+
},
|
|
93
|
+
];
|
|
94
|
+
rawResponse = await provider.chatSync(retryMessages, requestOptions);
|
|
95
|
+
lastUsage = provider.getLastUsage();
|
|
96
|
+
accumulateUsage(totalUsage, lastUsage);
|
|
97
|
+
checkTruncation(lastUsage, requestOptions.maxTokens, true);
|
|
98
|
+
const retryParsed = tryParseAndValidate(rawResponse, schema);
|
|
99
|
+
if (retryParsed.success) {
|
|
100
|
+
spinner.succeed(`Done${formatUsage(totalUsage)}`);
|
|
101
|
+
return { result: retryParsed.data, usage: totalUsage };
|
|
102
|
+
}
|
|
103
|
+
spinner.stop();
|
|
104
|
+
throw new AIError(`AI returned invalid JSON after retry: ${retryParsed.error}`, 'invalid_response');
|
|
105
|
+
}
|
|
106
|
+
catch (err) {
|
|
107
|
+
spinner.stop();
|
|
108
|
+
throw err;
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
// ---------------------------------------------------------------------------
|
|
112
|
+
// Public generation functions
|
|
113
|
+
// ---------------------------------------------------------------------------
|
|
114
|
+
/**
|
|
115
|
+
* Generate a validated JSON response from the AI (non-streaming).
|
|
50
116
|
*
|
|
51
117
|
* Flow:
|
|
52
118
|
* 1. Send messages with JSON mode hint
|
|
@@ -60,27 +126,10 @@ export async function generateJSON(provider, messages, schema, options) {
|
|
|
60
126
|
...options,
|
|
61
127
|
jsonMode: true,
|
|
62
128
|
};
|
|
63
|
-
|
|
64
|
-
let parsed = tryParseAndValidate(rawResponse, schema);
|
|
65
|
-
if (parsed.success)
|
|
66
|
-
return parsed.data;
|
|
67
|
-
// Retry once with error feedback
|
|
68
|
-
const retryMessages = [
|
|
69
|
-
...messages,
|
|
70
|
-
{ role: 'assistant', content: rawResponse },
|
|
71
|
-
{
|
|
72
|
-
role: 'user',
|
|
73
|
-
content: `Your response was not valid JSON or failed validation:\n${parsed.error}\n\nPlease fix and return valid JSON only.`,
|
|
74
|
-
},
|
|
75
|
-
];
|
|
76
|
-
rawResponse = await provider.chatSync(retryMessages, requestOptions);
|
|
77
|
-
parsed = tryParseAndValidate(rawResponse, schema);
|
|
78
|
-
if (parsed.success)
|
|
79
|
-
return parsed.data;
|
|
80
|
-
throw new AIError(`AI returned invalid JSON after retry: ${parsed.error}`, 'invalid_response');
|
|
129
|
+
return generateCore(provider, messages, schema, requestOptions, () => provider.chatSync(messages, requestOptions));
|
|
81
130
|
}
|
|
82
131
|
/**
|
|
83
|
-
* Generate JSON with streaming — shows progress
|
|
132
|
+
* Generate JSON with streaming — shows progress spinner in the terminal
|
|
84
133
|
* while the AI generates, then parses the complete response.
|
|
85
134
|
*/
|
|
86
135
|
export async function generateStreamingJSON(provider, messages, schema, options) {
|
|
@@ -89,39 +138,18 @@ export async function generateStreamingJSON(provider, messages, schema, options)
|
|
|
89
138
|
...options,
|
|
90
139
|
jsonMode: true,
|
|
91
140
|
};
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
chunks.push(chunk);
|
|
98
|
-
// Show a dot every ~200 chars of content
|
|
99
|
-
if (chunks.join('').length > (dotCount + 1) * 200) {
|
|
100
|
-
process.stdout.write('.');
|
|
101
|
-
dotCount++;
|
|
141
|
+
return generateCore(provider, messages, schema, requestOptions, async () => {
|
|
142
|
+
const chunks = [];
|
|
143
|
+
const stream = provider.chat(messages, requestOptions);
|
|
144
|
+
for await (const chunk of stream) {
|
|
145
|
+
chunks.push(chunk);
|
|
102
146
|
}
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
process.stdout.write('\n');
|
|
106
|
-
const rawResponse = chunks.join('');
|
|
107
|
-
let parsed = tryParseAndValidate(rawResponse, schema);
|
|
108
|
-
if (parsed.success)
|
|
109
|
-
return parsed.data;
|
|
110
|
-
// Retry once with error feedback (non-streaming for retry)
|
|
111
|
-
const retryMessages = [
|
|
112
|
-
...messages,
|
|
113
|
-
{ role: 'assistant', content: rawResponse },
|
|
114
|
-
{
|
|
115
|
-
role: 'user',
|
|
116
|
-
content: `Your response was not valid JSON or failed validation:\n${parsed.error}\n\nPlease fix and return valid JSON only.`,
|
|
117
|
-
},
|
|
118
|
-
];
|
|
119
|
-
const retryResponse = await provider.chatSync(retryMessages, requestOptions);
|
|
120
|
-
parsed = tryParseAndValidate(retryResponse, schema);
|
|
121
|
-
if (parsed.success)
|
|
122
|
-
return parsed.data;
|
|
123
|
-
throw new AIError(`AI returned invalid JSON after retry: ${parsed.error}`, 'invalid_response');
|
|
147
|
+
return chunks.join('');
|
|
148
|
+
});
|
|
124
149
|
}
|
|
150
|
+
// ---------------------------------------------------------------------------
|
|
151
|
+
// Internal utilities
|
|
152
|
+
// ---------------------------------------------------------------------------
|
|
125
153
|
/** Extract JSON from a response that might contain markdown code fences. */
|
|
126
154
|
function extractJSON(raw) {
|
|
127
155
|
// Strip markdown code fences if present
|
|
@@ -130,6 +158,13 @@ function extractJSON(raw) {
|
|
|
130
158
|
return fenceMatch[1].trim();
|
|
131
159
|
return raw.trim();
|
|
132
160
|
}
|
|
161
|
+
/** Accumulate token usage from a provider call into a running total. */
|
|
162
|
+
export function accumulateUsage(total, usage) {
|
|
163
|
+
if (usage) {
|
|
164
|
+
total.inputTokens += usage.inputTokens;
|
|
165
|
+
total.outputTokens += usage.outputTokens;
|
|
166
|
+
}
|
|
167
|
+
}
|
|
133
168
|
function tryParseAndValidate(raw, schema) {
|
|
134
169
|
try {
|
|
135
170
|
const cleaned = extractJSON(raw);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ai-service.js","sourceRoot":"","sources":["../../src/services/ai-service.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAKH,OAAO,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"ai-service.js","sourceRoot":"","sources":["../../src/services/ai-service.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Credential storage backends.
|
|
3
|
+
*
|
|
4
|
+
* Three backends in order of preference:
|
|
5
|
+
* 1. OS Keychain (macOS Keychain, Windows Credential Manager, Linux Secret Service)
|
|
6
|
+
* 2. Encrypted file (~/.planr/credentials.enc) using AES-256-GCM
|
|
7
|
+
* 3. Legacy plaintext file (~/.planr/credentials.json) — read-only, for migration
|
|
8
|
+
*/
|
|
9
|
+
export type CredentialSource = 'env' | 'keychain' | 'encrypted-file';
|
|
10
|
+
export interface CredentialBackend {
|
|
11
|
+
readonly name: CredentialSource;
|
|
12
|
+
get(provider: string): Promise<string | undefined>;
|
|
13
|
+
set(provider: string, value: string): Promise<void>;
|
|
14
|
+
delete(provider: string): Promise<boolean>;
|
|
15
|
+
isAvailable(): Promise<boolean>;
|
|
16
|
+
}
|
|
17
|
+
export declare class KeychainBackend implements CredentialBackend {
|
|
18
|
+
readonly name: "keychain";
|
|
19
|
+
isAvailable(): Promise<boolean>;
|
|
20
|
+
get(provider: string): Promise<string | undefined>;
|
|
21
|
+
set(provider: string, value: string): Promise<void>;
|
|
22
|
+
delete(provider: string): Promise<boolean>;
|
|
23
|
+
}
|
|
24
|
+
export declare class EncryptedFileBackend implements CredentialBackend {
|
|
25
|
+
readonly name: "encrypted-file";
|
|
26
|
+
isAvailable(): Promise<boolean>;
|
|
27
|
+
private loadAll;
|
|
28
|
+
private saveAll;
|
|
29
|
+
get(provider: string): Promise<string | undefined>;
|
|
30
|
+
set(provider: string, value: string): Promise<void>;
|
|
31
|
+
delete(provider: string): Promise<boolean>;
|
|
32
|
+
}
|
|
33
|
+
export declare class LegacyPlaintextBackend {
|
|
34
|
+
exists(): Promise<boolean>;
|
|
35
|
+
loadAll(): Promise<Record<string, string>>;
|
|
36
|
+
remove(): Promise<void>;
|
|
37
|
+
}
|
|
38
|
+
export declare const keychainBackend: KeychainBackend;
|
|
39
|
+
export declare const encryptedFileBackend: EncryptedFileBackend;
|
|
40
|
+
export declare const legacyBackend: LegacyPlaintextBackend;
|
|
41
|
+
//# sourceMappingURL=credential-backends.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"credential-backends.d.ts","sourceRoot":"","sources":["../../src/services/credential-backends.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAWH,MAAM,MAAM,gBAAgB,GAAG,KAAK,GAAG,UAAU,GAAG,gBAAgB,CAAC;AAErE,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,IAAI,EAAE,gBAAgB,CAAC;IAChC,GAAG,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IACnD,GAAG,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACpD,MAAM,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAC3C,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;CACjC;AA0BD,qBAAa,eAAgB,YAAW,iBAAiB;IACvD,QAAQ,CAAC,IAAI,EAAG,UAAU,CAAU;IAE9B,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC;IAiB/B,GAAG,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;IAUlD,GAAG,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAMnD,MAAM,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;CASjD;AA6DD,qBAAa,oBAAqB,YAAW,iBAAiB;IAC5D,QAAQ,CAAC,IAAI,EAAG,gBAAgB,CAAU;IAEpC,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC;YAIvB,OAAO;YAwBP,OAAO;IAWf,GAAG,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;IAKlD,GAAG,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAMnD,MAAM,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;CAOjD;AAQD,qBAAa,sBAAsB;IAC3B,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC;IAI1B,OAAO,IAAI,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAW1C,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;CAO9B;AAMD,eAAO,MAAM,eAAe,iBAAwB,CAAC;AACrD,eAAO,MAAM,oBAAoB,sBAA6B,CAAC;AAC/D,eAAO,MAAM,aAAa,wBAA+B,CAAC"}
|