@vibe-assurance/cli 1.7.4 → 1.7.6

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vibe-assurance/cli",
3
- "version": "1.7.4",
3
+ "version": "1.7.6",
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": {
@@ -71,13 +71,15 @@ async function login() {
71
71
  const refreshToken = url.searchParams.get('refresh_token');
72
72
  const expiresIn = url.searchParams.get('expires_in');
73
73
  const error = url.searchParams.get('error');
74
+ const errorDescription = url.searchParams.get('error_description');
74
75
 
75
76
  if (error) {
76
- // Authentication failed
77
+ // Authentication failed - use description if available
78
+ const errorMessage = errorDescription || error;
77
79
  res.writeHead(400, { 'Content-Type': 'text/html' });
78
- res.end(getErrorHtml(error));
80
+ res.end(getErrorHtml(errorMessage));
79
81
  server.close();
80
- reject(new Error(error));
82
+ reject(new Error(errorMessage));
81
83
  return;
82
84
  }
83
85
 
package/src/mcp/tools.js CHANGED
@@ -167,6 +167,50 @@ const tools = [
167
167
  }
168
168
  },
169
169
 
170
+ {
171
+ name: 'vibe_create_template',
172
+ description: 'Create a new document template in Vibe Assurance. Templates provide standardized structures for governance documents. (Platform Admin only)',
173
+ inputSchema: {
174
+ type: 'object',
175
+ properties: {
176
+ templateId: {
177
+ type: 'string',
178
+ description: 'Unique template ID (lowercase, hyphenated, e.g., "change-request", "test-plan")'
179
+ },
180
+ name: {
181
+ type: 'string',
182
+ description: 'Display name for the template (e.g., "Change Request Template")'
183
+ },
184
+ description: {
185
+ type: 'string',
186
+ description: 'Brief description of what this template is for'
187
+ },
188
+ category: {
189
+ type: 'string',
190
+ enum: ['change-management', 'risk', 'security', 'compliance', 'planning', 'other'],
191
+ description: 'Template category (default: "other")'
192
+ },
193
+ content: {
194
+ type: 'string',
195
+ description: 'The full template content (markdown format with placeholders)'
196
+ },
197
+ version: {
198
+ type: 'string',
199
+ description: 'Version number (default: "1.0.0")'
200
+ },
201
+ tier: {
202
+ type: 'string',
203
+ enum: ['free', 'essentials', 'pro', 'business', 'enterprise'],
204
+ description: 'Access tier (default: "free")'
205
+ }
206
+ },
207
+ required: ['templateId', 'name', 'content']
208
+ },
209
+ handler: async (params) => {
210
+ return await api.post('/api/mcp/templates', params);
211
+ }
212
+ },
213
+
170
214
  // ============================================================================
171
215
  // PUSH TOOLS - Store data to Vibe Assurance
172
216
  // ============================================================================