@vibe-assurance/cli 1.0.6 → 1.0.7

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 (2) hide show
  1. package/package.json +1 -1
  2. package/src/mcp/tools.js +28 -2
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vibe-assurance/cli",
3
- "version": "1.0.6",
3
+ "version": "1.0.7",
4
4
  "description": "Vibe Assurance CLI - Connect AI coding agents to your governance platform via MCP",
5
5
  "main": "src/index.js",
6
6
  "bin": {
package/src/mcp/tools.js CHANGED
@@ -226,7 +226,7 @@ const tools = [
226
226
 
227
227
  {
228
228
  name: 'vibe_update_artifact',
229
- description: 'Update an existing artifact. You can update the status, content, title, or metadata.',
229
+ description: 'Update an existing artifact. You can update the status, content, title, or metadata. WARNING: If you provide a "files" array, it REPLACES ALL existing files. To safely add a single file without affecting others, use vibe_append_file instead.',
230
230
  inputSchema: {
231
231
  type: 'object',
232
232
  properties: {
@@ -249,7 +249,7 @@ const tools = [
249
249
  },
250
250
  files: {
251
251
  type: 'array',
252
- description: 'Updated files array',
252
+ description: 'WARNING: This REPLACES ALL existing files. Use vibe_append_file to safely add a single file.',
253
253
  items: {
254
254
  type: 'object',
255
255
  properties: {
@@ -270,6 +270,32 @@ const tools = [
270
270
  }
271
271
  },
272
272
 
273
+ {
274
+ name: 'vibe_append_file',
275
+ description: 'Safely append or update a single file in an artifact WITHOUT affecting other files. Use this instead of vibe_update_artifact when you only need to add one file (e.g., adding verification-report.md to a CR). This is the SAFE way to add files - it will not destroy existing documentation.',
276
+ inputSchema: {
277
+ type: 'object',
278
+ properties: {
279
+ artifactId: {
280
+ type: 'string',
281
+ description: 'The artifact ID to add the file to (e.g., "CR-2025-024")'
282
+ },
283
+ name: {
284
+ type: 'string',
285
+ description: 'Filename to add or update (e.g., "verification-report.md")'
286
+ },
287
+ content: {
288
+ type: 'string',
289
+ description: 'Full file content (must be complete, not abbreviated)'
290
+ }
291
+ },
292
+ required: ['artifactId', 'name', 'content']
293
+ },
294
+ handler: async ({ artifactId, name, content }) => {
295
+ return await api.post(`/api/mcp/artifacts/${artifactId}/files`, { name, content });
296
+ }
297
+ },
298
+
273
299
  {
274
300
  name: 'vibe_list_artifacts',
275
301
  description: 'List your stored artifacts with optional filters. Use this to see what governance documents you have stored.',