63 lines
2.7 KiB
JavaScript
63 lines
2.7 KiB
JavaScript
"use strict";
|
|
// =============================================================================
|
|
// finalize_prd tool registration. Logic + store live in ./prd-api.ts.
|
|
// We re-export `prdStore` so existing imports (atlas.ts) continue to work.
|
|
// =============================================================================
|
|
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
if (k2 === undefined) k2 = k;
|
|
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
}
|
|
Object.defineProperty(o, k2, desc);
|
|
}) : (function(o, m, k, k2) {
|
|
if (k2 === undefined) k2 = k;
|
|
o[k2] = m[k];
|
|
}));
|
|
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
}) : function(o, v) {
|
|
o["default"] = v;
|
|
});
|
|
var __importStar = (this && this.__importStar) || (function () {
|
|
var ownKeys = function(o) {
|
|
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
var ar = [];
|
|
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
return ar;
|
|
};
|
|
return ownKeys(o);
|
|
};
|
|
return function (mod) {
|
|
if (mod && mod.__esModule) return mod;
|
|
var result = {};
|
|
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
__setModuleDefault(result, mod);
|
|
return result;
|
|
};
|
|
})();
|
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
exports.prdStore = void 0;
|
|
const registry_1 = require("./registry");
|
|
const api = __importStar(require("./prd-api"));
|
|
var prd_api_1 = require("./prd-api");
|
|
Object.defineProperty(exports, "prdStore", { enumerable: true, get: function () { return prd_api_1.prdStore; } });
|
|
(0, registry_1.registerTool)({
|
|
name: 'finalize_prd',
|
|
description: 'Call this when you have finished writing the complete PRD document. Pass the full PRD markdown as content. This saves the document and signals to the user that discovery is complete.',
|
|
parameters: {
|
|
type: 'object',
|
|
properties: {
|
|
content: {
|
|
type: 'string',
|
|
description: 'The complete PRD document in markdown format'
|
|
}
|
|
},
|
|
required: ['content']
|
|
},
|
|
async handler(args, ctx) {
|
|
// Store against workspaceRoot as a unique key (each project has its own workspace)
|
|
return api.finalizePrd(ctx.workspaceRoot, String(args.content));
|
|
}
|
|
});
|