@agentmanifest/cli 0.1.11 → 0.2.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/CHANGELOG.md CHANGED
@@ -5,6 +5,30 @@ All notable changes to the AMP CLI will be documented in this file.
5
5
  The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
6
6
  and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
7
 
8
+ ## [0.2.0] - 2026-02-19
9
+
10
+ ### Added
11
+ - AMP v0.2 spec support (agentmanifest-0.2)
12
+ - New categories: food-science, materials, construction, music-gear, agriculture, computing, language, history, commerce, identity, logistics, other
13
+ - New primary categories: reference, live, computational, transactional, enrichment, personal, discovery
14
+ - New pricing models: per-query, pay-what-you-want, tiered
15
+ - Required reliability section with maintained_by
16
+ - Endpoint parameters as array format; response_description required
17
+
18
+ ### Changed
19
+ - `amp init` now scaffolds a manifest (no wizard). Edit the file or use an AI agent to fill.
20
+ - Removed interactive wizard - scaffold-only approach for simpler UX
21
+ - Overwrite confirmation when agent-manifest.json already exists
22
+ - Type definitions updated for v0.2 schema
23
+ - Contact is now a single string (email or URL)
24
+ - Authentication uses required flag + instructions instead of config
25
+
26
+ ### Removed
27
+ - Interactive wizard (20+ prompts)
28
+ - Rate limits (not in v0.2 spec)
29
+ - Homepage/documentation from required fields
30
+ - Old v0.1 category and pricing models
31
+
8
32
  ## [0.1.11] - 2026-02-16
9
33
 
10
34
  ### Fixed
@@ -8,7 +8,7 @@ Complete Node.js CLI tool for the Agent Manifest Protocol, ready for npm publica
8
8
  amp-cli/
9
9
  ├── src/ # TypeScript source files
10
10
  │ ├── commands/ # Command implementations
11
- │ │ ├── init.ts # Interactive manifest creation
11
+ │ │ ├── init.ts # Manifest scaffolding
12
12
  │ │ ├── validate.ts # Manifest validation
13
13
  │ │ └── publish.ts # Registry submission
14
14
  │ ├── constants.ts # Controlled vocabularies
@@ -38,12 +38,10 @@ amp-cli/
38
38
  - Defines three main commands: init, validate, publish
39
39
  - Includes version and help information
40
40
 
41
- #### `commands/init.ts` (Interactive Scaffolding)
42
- - Full wizard for creating agent-manifest.json
43
- - Inquirer prompts for all required fields
44
- - Validates user input in real-time
45
- - Supports multiple endpoints with parameters
46
- - Generates compliant AMP v0.1 manifest
41
+ #### `commands/init.ts` (Scaffolding)
42
+ - Creates minimal valid agent-manifest.json per AMP v0.2 spec
43
+ - No prompts - edit the file or have an AI agent fill it in
44
+ - Prompts for overwrite confirmation if file already exists
47
45
 
48
46
  #### `commands/validate.ts` (Validation)
49
47
  - Reads manifest from filesystem
@@ -58,12 +56,14 @@ amp-cli/
58
56
  - Returns listing ID and registry URL
59
57
 
60
58
  #### `constants.ts` (Controlled Vocabularies)
61
- - Standard categories (15 categories)
62
- - Pricing models (free, usage_based, subscription)
59
+ - Standard categories (20 categories: food-science, materials, chemistry, etc.)
60
+ - Primary categories (reference, live, computational, transactional, enrichment, personal, discovery)
61
+ - Pricing models (free, per-query, subscription, pay-what-you-want, tiered)
63
62
  - Authentication types (none, api_key, oauth2, bearer)
63
+ - Maintained-by options (individual, organization, community)
64
64
 
65
65
  #### `types.ts` (TypeScript Definitions)
66
- - Complete type definitions for AMP v0.1
66
+ - Complete type definitions for AMP v0.2
67
67
  - Interfaces for all manifest sections
68
68
  - Type safety for parameters and responses
69
69
 
@@ -125,14 +125,10 @@ amp-cli/
125
125
 
126
126
  ## Key Features
127
127
 
128
- ### Interactive Creation (`amp init`)
129
- - Step-by-step wizard
130
- - Real-time validation
131
- - Multi-endpoint support
132
- - Parameter configuration
133
- - Optional sections (rate limits, reliability)
134
- - Contact information
135
- - Agent guidance notes
128
+ ### Scaffolding (`amp init`)
129
+ - Instant manifest creation
130
+ - Minimal valid template per spec
131
+ - Edit directly or use AI agent to fill in
136
132
 
137
133
  ### Validation (`amp validate`)
138
134
  - API integration
package/QUICK_START.md CHANGED
@@ -17,7 +17,7 @@ cd /path/to/your/api
17
17
  amp init
18
18
  ```
19
19
 
20
- Follow the prompts to create your `agent-manifest.json`.
20
+ Creates `agent-manifest.json`. Edit it to add your API details.
21
21
 
22
22
  ### 2. Validate Your Manifest
23
23
 
@@ -52,15 +52,14 @@ amp publish
52
52
 
53
53
  ## Minimal Manifest Example
54
54
 
55
- The wizard will help you create something like this:
55
+ `amp init` creates a scaffold like this. Edit to add your API details:
56
56
 
57
57
  ```json
58
58
  {
59
- "spec_version": "agentmanifest-0.1",
59
+ "spec_version": "agentmanifest-0.2",
60
60
  "name": "Weather Data API",
61
61
  "version": "1.0.0",
62
62
  "description": "Provides real-time weather data and forecasts for locations worldwide with high accuracy and comprehensive coverage including current conditions, hourly forecasts, and historical data.",
63
- "homepage": "https://api.weather-data.com",
64
63
  "categories": ["weather"],
65
64
  "primary_category": "live",
66
65
  "endpoints": [
@@ -68,19 +67,24 @@ The wizard will help you create something like this:
68
67
  "path": "/current",
69
68
  "method": "GET",
70
69
  "description": "Get current weather for a location",
71
- "response": {
72
- "type": "object",
73
- "description": "Current weather conditions"
74
- }
70
+ "parameters": [],
71
+ "response_description": "Current weather conditions including temperature and conditions"
75
72
  }
76
73
  ],
77
74
  "pricing": {
78
- "model": "free"
75
+ "model": "free",
76
+ "free_tier": { "queries_per_day": null, "queries_per_month": null }
79
77
  },
80
78
  "authentication": {
79
+ "required": false,
81
80
  "type": "none"
82
81
  },
82
+ "reliability": {
83
+ "maintained_by": "organization"
84
+ },
83
85
  "agent_notes": "Simple weather API. Use location parameter with city names or coordinates for precise results.",
86
+ "contact": "support@weather-data.com",
87
+ "listing_requested": true,
84
88
  "last_updated": "2026-02-15T10:30:00Z"
85
89
  }
86
90
  ```
@@ -122,8 +126,8 @@ amp publish
122
126
 
123
127
  1. **Description Length**: Must be ≥100 characters. Be descriptive!
124
128
  2. **Agent Notes**: Must be ≥50 characters. Tell agents how to use your API.
125
- 3. **Categories**: Choose the most relevant. Primary category must be in your categories list.
126
- 4. **Homepage**: This is where your manifest will be hosted (`https://your-api.com/.well-known/agent-manifest.json`)
129
+ 3. **Categories**: Choose the most relevant. Primary category (reference, live, computational, etc.) is separate from categories.
130
+ 4. **Homepage**: Host your manifest at `https://your-api.com/.well-known/agent-manifest.json`
127
131
 
128
132
  ## Hosting Your Manifest
129
133
 
package/README.md CHANGED
@@ -28,54 +28,20 @@ npx amp --help
28
28
 
29
29
  ### `amp init`
30
30
 
31
- Interactively create a new `agent-manifest.json` file in the current directory.
31
+ Scaffold a valid `agent-manifest.json` file in the current directory.
32
32
 
33
33
  ```bash
34
34
  amp init
35
35
  ```
36
36
 
37
- This command walks you through all required fields defined in the AMP v0.1 specification:
38
-
39
- - **Basic Information**: Name, version, description, URLs
40
- - **Categories**: Primary and secondary categories from controlled vocabulary
41
- - **Endpoints**: API endpoints with methods, parameters, and responses
42
- - **Pricing**: Free, usage-based, or subscription models
43
- - **Authentication**: None, API key, OAuth2, or bearer token
44
- - **Rate Limits**: Request limits per minute/day (optional)
45
- - **Reliability**: Uptime and response time metrics (optional)
46
- - **Contact**: Support email, URLs, GitHub (optional)
47
- - **Agent Notes**: Implementation guidance for AI agents (min 50 chars)
48
-
49
- The generated manifest will be saved as `agent-manifest.json` in your current directory.
50
-
51
- #### Example Session
37
+ Creates a minimal valid manifest per the AMP v0.2 specification. Edit the file to add your API details, or have an AI agent fill it in. Then run `amp validate` to check compliance.
52
38
 
53
39
  ```bash
54
40
  $ amp init
55
41
 
56
- 🚀 Agent Manifest Protocol - Interactive Setup
57
-
58
- 📋 Basic Information
59
- ? API name: Chemistry Calculator API
60
- ? Version (semantic versioning): 1.0.0
61
- ? Description (min 100 characters): A comprehensive chemistry API providing molecular calculations, compound information, and reaction predictions for AI agents working with chemical data
62
- ? Homepage URL (optional): https://api.chemcalc.com
63
- ? Documentation URL (optional): https://docs.chemcalc.com
64
-
65
- 🏷️ Categories
66
- ? Select categories: chemistry, education
67
- ? Select primary category: chemistry
68
-
69
- 🔌 Endpoints
70
- ? Endpoint path: /calculate/molar-mass
71
- ? HTTP method: POST
72
- ? Endpoint description: Calculate molar mass of chemical compounds
73
- ? Response description: Returns molar mass in g/mol with compound details
74
- ? Add parameters to this endpoint? Yes
75
- ...
76
-
77
- ✅ Success!
78
- Manifest created at: /path/to/agent-manifest.json
42
+ Created agent-manifest.json
43
+
44
+ Edit the file, then run "amp validate".
79
45
  ```
80
46
 
81
47
  ---
@@ -119,7 +85,7 @@ File: /path/to/agent-manifest.json
119
85
  Sending to validator API...
120
86
  ✅ Validation Passed
121
87
 
122
- Your manifest is compliant with AMP specification v0.1
88
+ Your manifest is compliant with AMP specification v0.2
123
89
 
124
90
  Next step: Run "amp publish" to submit to registry
125
91
  ```
@@ -138,7 +104,7 @@ Sending to validator API...
138
104
 
139
105
  Errors:
140
106
  1. description: Must be at least 100 characters (currently 45)
141
- 2. primary_category: Must be one of the categories in the categories array
107
+ 2. primary_category: Must be one of: reference, live, computational, transactional, enrichment, personal, discovery
142
108
  3. agent_notes: Must be at least 50 characters (currently 20)
143
109
 
144
110
  Please fix the errors and try again.
@@ -223,7 +189,7 @@ Run "amp validate" for detailed validation output.
223
189
  ### Complete Setup Flow
224
190
 
225
191
  ```bash
226
- # 1. Create a new manifest interactively
192
+ # 1. Create a new manifest
227
193
  amp init
228
194
 
229
195
  # 2. Review the generated file
@@ -240,20 +206,23 @@ amp publish
240
206
 
241
207
  ---
242
208
 
243
- ## Manifest Schema (v0.1)
209
+ ## Manifest Schema (v0.2)
244
210
 
245
211
  ### Required Fields
246
212
 
247
- - `spec_version`: Always `"agentmanifest-0.1"`
248
- - `name`: API name (string)
213
+ - `spec_version`: Always `"agentmanifest-0.2"`
214
+ - `name`: API name (3-100 characters)
249
215
  - `version`: Semantic version (e.g., "1.0.0")
250
216
  - `description`: Min 100 characters
251
217
  - `categories`: Array of domain categories (from controlled vocabulary below)
252
218
  - `primary_category`: API type - one of: "reference", "live", "computational", "transactional", "enrichment", "personal", "discovery"
253
219
  - `endpoints`: At least one endpoint required
254
- - `pricing.model`: "free", "usage_based", or "subscription"
255
- - `authentication.type`: "none", "api_key", "oauth2", or "bearer"
220
+ - `pricing.model`: "free", "per-query", "subscription", "pay-what-you-want", or "tiered"
221
+ - `authentication.required`: Boolean; `type`: "api_key", "oauth2", "bearer", or "none"
222
+ - `reliability.maintained_by`: "individual", "organization", or "community"
256
223
  - `agent_notes`: Min 50 characters - guidance for AI agents
224
+ - `contact`: Contact email or URL (string)
225
+ - `listing_requested`: Boolean
257
226
 
258
227
  ### Primary Category Types
259
228
 
@@ -268,21 +237,19 @@ amp publish
268
237
  ### Standard Domain Categories
269
238
 
270
239
  ```
271
- chemistry, biology, physics, mathematics, finance, weather,
272
- geography, food-science, engineering, legal, medical,
273
- education, translation, media, general
240
+ food-science, materials, construction, music-gear, chemistry, biology,
241
+ geography, finance, legal, medical, engineering, agriculture, computing,
242
+ language, history, commerce, identity, weather, logistics, other
274
243
  ```
275
244
 
276
245
  ### Example Manifest
277
246
 
278
247
  ```json
279
248
  {
280
- "spec_version": "agentmanifest-0.1",
249
+ "spec_version": "agentmanifest-0.2",
281
250
  "name": "Weather Data API",
282
251
  "version": "2.1.0",
283
252
  "description": "Real-time weather data and forecasts for locations worldwide. Provides current conditions, hourly forecasts, and historical weather data with high accuracy and global coverage.",
284
- "homepage": "https://api.weather-data.com",
285
- "documentation": "https://docs.weather-data.com",
286
253
  "categories": ["weather", "geography"],
287
254
  "primary_category": "live",
288
255
  "endpoints": [
@@ -290,45 +257,41 @@ education, translation, media, general
290
257
  "path": "/current",
291
258
  "method": "GET",
292
259
  "description": "Get current weather conditions for a location",
293
- "parameters": {
294
- "query": {
295
- "location": {
296
- "type": "string",
297
- "required": true,
298
- "description": "City name or coordinates (lat,lon)"
299
- }
260
+ "parameters": [
261
+ {
262
+ "name": "location",
263
+ "type": "string",
264
+ "required": true,
265
+ "description": "City name or coordinates (lat,lon)"
300
266
  }
301
- },
302
- "response": {
303
- "type": "object",
304
- "description": "Current weather data including temperature, conditions, and metadata"
305
- }
267
+ ],
268
+ "response_description": "Current weather data including temperature, conditions, and metadata"
306
269
  }
307
270
  ],
308
271
  "pricing": {
309
- "model": "usage_based",
310
- "details": "First 1000 requests free per month, then $0.001 per request"
272
+ "model": "per-query",
273
+ "free_tier": {
274
+ "queries_per_day": 1000,
275
+ "queries_per_month": 10000
276
+ },
277
+ "paid_tier": {
278
+ "amount_usd": 0.001,
279
+ "unit": "per request",
280
+ "description": "$0.001 per request after free tier"
281
+ }
311
282
  },
312
283
  "authentication": {
284
+ "required": true,
313
285
  "type": "api_key",
314
- "config": {
315
- "header": "X-API-Key",
316
- "signup_url": "https://api.weather-data.com/signup"
317
- }
318
- },
319
- "rate_limits": {
320
- "requests_per_minute": 60,
321
- "requests_per_day": 10000
322
- },
323
- "reliability_metrics": {
324
- "uptime_percentage": 99.9,
325
- "avg_response_time_ms": 150
286
+ "instructions": "Obtain API key at https://api.weather-data.com/signup"
326
287
  },
327
- "contact": {
328
- "email": "support@weather-data.com",
329
- "support_url": "https://support.weather-data.com"
288
+ "reliability": {
289
+ "maintained_by": "organization",
290
+ "status_url": "https://status.weather-data.com",
291
+ "expected_uptime_pct": 99.9
330
292
  },
331
293
  "agent_notes": "Use the 'location' parameter with city names for simplicity. Coordinates provide more precise results. Response includes semantic metadata to help interpret weather conditions.",
294
+ "contact": "support@weather-data.com",
332
295
  "listing_requested": true,
333
296
  "last_updated": "2026-02-15T10:30:00Z"
334
297
  }
@@ -340,14 +303,14 @@ education, translation, media, general
340
303
 
341
304
  The validator checks for:
342
305
 
343
- 1. **Spec Version**: Must be `"agentmanifest-0.1"`
344
- 2. **Semantic Versioning**: Version must follow `x.y.z` format
306
+ 1. **Spec Version**: Must be `"agentmanifest-0.2"`
307
+ 2. **Semantic Versioning**: Version must follow `x.y.z` format (with optional pre-release/build)
345
308
  3. **Description Length**: Minimum 100 characters
346
309
  4. **Agent Notes Length**: Minimum 50 characters
347
- 5. **Category Consistency**: Primary category must be in categories array
348
- 6. **Endpoints**: At least one endpoint required
310
+ 5. **Primary Category**: Must be one of reference, live, computational, transactional, enrichment, personal, discovery
311
+ 6. **Endpoints**: At least one endpoint; description and response_description min 20 characters
349
312
  7. **Valid URLs**: All URLs must be HTTPS
350
- 8. **Required Fields**: All mandatory fields present
313
+ 8. **Required Fields**: All mandatory fields present including reliability
351
314
  9. **Type Validation**: Fields match expected types
352
315
 
353
316
  ---
@@ -439,7 +402,7 @@ If you get validation errors, review the error messages carefully. Common issues
439
402
  - **Description too short**: Must be at least 100 characters
440
403
  - **Agent notes too short**: Must be at least 50 characters
441
404
  - **Invalid version**: Must follow semantic versioning (e.g., "1.0.0")
442
- - **Category mismatch**: Primary category must be in your categories array
405
+ - **Invalid primary category**: Must be one of reference, live, computational, transactional, enrichment, personal, discovery
443
406
  - **Missing endpoints**: At least one endpoint required
444
407
 
445
408
  ---
@@ -1 +1 @@
1
- {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"AAOA,wBAAsB,WAAW,kBA6chC"}
1
+ {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"AAuCA,wBAAsB,WAAW,kBAkChC"}
@@ -4,19 +4,45 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.initCommand = initCommand;
7
- const inquirer_1 = __importDefault(require("inquirer"));
8
7
  const promises_1 = __importDefault(require("fs/promises"));
9
8
  const path_1 = __importDefault(require("path"));
10
9
  const chalk_1 = __importDefault(require("chalk"));
11
- const constants_1 = require("../constants");
10
+ const inquirer_1 = __importDefault(require("inquirer"));
11
+ /** Minimal valid manifest per agentmanifest-0.2 spec. AI agents or humans can fill in. */
12
+ function scaffoldManifest() {
13
+ return {
14
+ spec_version: 'agentmanifest-0.2',
15
+ name: 'My API',
16
+ version: '1.0.0',
17
+ description: 'Describe your API here. Minimum 100 characters required. Explain what data or capabilities this API provides for AI agents.',
18
+ categories: ['other'],
19
+ primary_category: 'reference',
20
+ endpoints: [
21
+ {
22
+ path: '/example',
23
+ method: 'GET',
24
+ description: 'Describe when and why agents should use this endpoint (min 20 chars)',
25
+ parameters: [],
26
+ response_description: 'Describe the response content and how to interpret it (min 20 chars)',
27
+ },
28
+ ],
29
+ pricing: {
30
+ model: 'free',
31
+ free_tier: { queries_per_day: null, queries_per_month: null },
32
+ },
33
+ authentication: { required: false, type: 'none' },
34
+ reliability: { maintained_by: 'individual' },
35
+ agent_notes: 'Add implementation guidance for AI agents here. Minimum 50 characters. How should agents use this API?',
36
+ contact: 'you@example.com',
37
+ listing_requested: false,
38
+ last_updated: new Date().toISOString(),
39
+ };
40
+ }
12
41
  async function initCommand() {
13
- console.log(chalk_1.default.cyan.bold('\n🚀 Agent Manifest Protocol - Interactive Setup\n'));
14
- console.log(chalk_1.default.gray('This wizard will help you create a valid agent-manifest.json file.\n'));
42
+ const outputPath = path_1.default.join(process.cwd(), 'agent-manifest.json');
15
43
  try {
16
- // Check if file already exists
17
- const outputPath = path_1.default.join(process.cwd(), 'agent-manifest.json');
44
+ await promises_1.default.access(outputPath);
18
45
  try {
19
- await promises_1.default.access(outputPath);
20
46
  const { overwrite } = await inquirer_1.default.prompt([
21
47
  {
22
48
  type: 'confirm',
@@ -26,428 +52,26 @@ async function initCommand() {
26
52
  },
27
53
  ]);
28
54
  if (!overwrite) {
29
- console.log(chalk_1.default.yellow('Aborted.'));
55
+ console.log(chalk_1.default.yellow('\nAborted.\n'));
30
56
  return;
31
57
  }
32
58
  }
33
- catch {
34
- // File doesn't exist, continue
35
- }
36
- // Basic Information
37
- console.log(chalk_1.default.bold('\n📋 Basic Information'));
38
- const basicInfo = await inquirer_1.default.prompt([
39
- {
40
- type: 'input',
41
- name: 'name',
42
- message: 'API name:',
43
- validate: (input) => input.trim().length > 0 || 'Name is required',
44
- },
45
- {
46
- type: 'input',
47
- name: 'version',
48
- message: 'Version (semantic versioning):',
49
- default: '1.0.0',
50
- validate: (input) => {
51
- const semverRegex = /^\d+\.\d+\.\d+$/;
52
- return semverRegex.test(input) || 'Must be valid semantic version (e.g., 1.0.0)';
53
- },
54
- },
55
- {
56
- type: 'input',
57
- name: 'description',
58
- message: 'Description (min 100 characters):',
59
- validate: (input) => input.trim().length >= 100 || `Description must be at least 100 characters (currently ${input.trim().length})`,
60
- },
61
- {
62
- type: 'input',
63
- name: 'homepage',
64
- message: 'Homepage URL (optional):',
65
- validate: (input) => {
66
- if (!input)
67
- return true;
68
- try {
69
- new URL(input);
70
- return input.startsWith('https://') || 'Must be HTTPS URL';
71
- }
72
- catch {
73
- return 'Must be a valid URL';
74
- }
75
- },
76
- },
77
- {
78
- type: 'input',
79
- name: 'documentation',
80
- message: 'Documentation URL (optional):',
81
- validate: (input) => {
82
- if (!input)
83
- return true;
84
- try {
85
- new URL(input);
86
- return input.startsWith('https://') || 'Must be HTTPS URL';
87
- }
88
- catch {
89
- return 'Must be a valid URL';
90
- }
91
- },
92
- },
93
- ]);
94
- // Categories
95
- console.log(chalk_1.default.bold('\n🏷️ Categories'));
96
- const categoryInfo = await inquirer_1.default.prompt([
97
- {
98
- type: 'checkbox',
99
- name: 'categories',
100
- message: 'Select categories (must select at least one):',
101
- choices: constants_1.STANDARD_CATEGORIES,
102
- validate: (input) => input.length > 0 || 'Must select at least one category',
103
- },
104
- ]);
105
- const { primary_category } = await inquirer_1.default.prompt([
106
- {
107
- type: 'list',
108
- name: 'primary_category',
109
- message: 'Select primary category:',
110
- choices: categoryInfo.categories,
111
- },
112
- ]);
113
- // Endpoints
114
- console.log(chalk_1.default.bold('\n🔌 Endpoints'));
115
- const endpoints = [];
116
- let addMore = true;
117
- while (addMore) {
118
- const endpointInfo = await inquirer_1.default.prompt([
119
- {
120
- type: 'input',
121
- name: 'path',
122
- message: 'Endpoint path (e.g., /api/v1/data):',
123
- validate: (input) => input.trim().startsWith('/') || 'Path must start with /',
124
- },
125
- {
126
- type: 'list',
127
- name: 'method',
128
- message: 'HTTP method:',
129
- choices: ['GET', 'POST', 'PUT', 'DELETE', 'PATCH'],
130
- default: 'GET',
131
- },
132
- {
133
- type: 'input',
134
- name: 'description',
135
- message: 'Endpoint description:',
136
- validate: (input) => input.trim().length > 0 || 'Description is required',
137
- },
138
- {
139
- type: 'input',
140
- name: 'response_description',
141
- message: 'Response description:',
142
- validate: (input) => input.trim().length > 0 || 'Response description is required',
143
- },
144
- ]);
145
- // Ask about parameters
146
- const { hasParams } = await inquirer_1.default.prompt([
147
- {
148
- type: 'confirm',
149
- name: 'hasParams',
150
- message: 'Add parameters to this endpoint?',
151
- default: false,
152
- },
153
- ]);
154
- const parameters = {};
155
- if (hasParams) {
156
- const { paramLocation } = await inquirer_1.default.prompt([
157
- {
158
- type: 'list',
159
- name: 'paramLocation',
160
- message: 'Parameter location:',
161
- choices: ['query', 'body'],
162
- },
163
- ]);
164
- const params = {};
165
- let addMoreParams = true;
166
- while (addMoreParams) {
167
- const paramInfo = await inquirer_1.default.prompt([
168
- {
169
- type: 'input',
170
- name: 'name',
171
- message: 'Parameter name:',
172
- validate: (input) => input.trim().length > 0 || 'Name is required',
173
- },
174
- {
175
- type: 'list',
176
- name: 'type',
177
- message: 'Parameter type:',
178
- choices: ['string', 'number', 'boolean', 'array', 'object'],
179
- },
180
- {
181
- type: 'confirm',
182
- name: 'required',
183
- message: 'Is this parameter required?',
184
- default: false,
185
- },
186
- {
187
- type: 'input',
188
- name: 'description',
189
- message: 'Parameter description:',
190
- validate: (input) => input.trim().length > 0 || 'Description is required',
191
- },
192
- ]);
193
- params[paramInfo.name] = {
194
- type: paramInfo.type,
195
- required: paramInfo.required,
196
- description: paramInfo.description,
197
- };
198
- const { continueParams } = await inquirer_1.default.prompt([
199
- {
200
- type: 'confirm',
201
- name: 'continueParams',
202
- message: 'Add another parameter?',
203
- default: false,
204
- },
205
- ]);
206
- addMoreParams = continueParams;
207
- }
208
- parameters[paramLocation] = params;
59
+ catch (err) {
60
+ if (err.isTtyError) {
61
+ console.error(chalk_1.default.red('\nagent-manifest.json exists. Run in an interactive terminal to overwrite, or remove the file first.\n'));
62
+ process.exit(1);
209
63
  }
210
- endpoints.push({
211
- path: endpointInfo.path,
212
- method: endpointInfo.method,
213
- description: endpointInfo.description,
214
- parameters: Object.keys(parameters).length > 0 ? parameters : undefined,
215
- response: {
216
- type: 'object',
217
- description: endpointInfo.response_description,
218
- },
219
- });
220
- const { continueEndpoints } = await inquirer_1.default.prompt([
221
- {
222
- type: 'confirm',
223
- name: 'continueEndpoints',
224
- message: 'Add another endpoint?',
225
- default: false,
226
- },
227
- ]);
228
- addMore = continueEndpoints;
229
- }
230
- // Pricing
231
- console.log(chalk_1.default.bold('\n💰 Pricing'));
232
- const pricingInfo = await inquirer_1.default.prompt([
233
- {
234
- type: 'list',
235
- name: 'model',
236
- message: 'Pricing model:',
237
- choices: constants_1.PRICING_MODELS,
238
- },
239
- {
240
- type: 'input',
241
- name: 'details',
242
- message: 'Pricing details (optional, e.g., "First 1000 requests free"):',
243
- },
244
- ]);
245
- // Authentication
246
- console.log(chalk_1.default.bold('\n🔐 Authentication'));
247
- const authInfo = await inquirer_1.default.prompt([
248
- {
249
- type: 'list',
250
- name: 'type',
251
- message: 'Authentication type:',
252
- choices: constants_1.AUTH_TYPES,
253
- },
254
- ]);
255
- let authConfig = {};
256
- if (authInfo.type !== 'none') {
257
- const configInfo = await inquirer_1.default.prompt([
258
- {
259
- type: 'input',
260
- name: 'header',
261
- message: 'Header name (e.g., X-API-Key, Authorization):',
262
- when: authInfo.type === 'api_key' || authInfo.type === 'bearer',
263
- },
264
- {
265
- type: 'input',
266
- name: 'signup_url',
267
- message: 'Signup URL for obtaining credentials:',
268
- validate: (input) => {
269
- if (!input)
270
- return true;
271
- try {
272
- new URL(input);
273
- return true;
274
- }
275
- catch {
276
- return 'Must be a valid URL';
277
- }
278
- },
279
- },
280
- ]);
281
- authConfig = configInfo;
282
- }
283
- // Rate Limits (optional)
284
- console.log(chalk_1.default.bold('\n⏱️ Rate Limits (optional)'));
285
- const { addRateLimits } = await inquirer_1.default.prompt([
286
- {
287
- type: 'confirm',
288
- name: 'addRateLimits',
289
- message: 'Add rate limit information?',
290
- default: false,
291
- },
292
- ]);
293
- let rateLimits;
294
- if (addRateLimits) {
295
- rateLimits = await inquirer_1.default.prompt([
296
- {
297
- type: 'number',
298
- name: 'requests_per_minute',
299
- message: 'Requests per minute:',
300
- default: 60,
301
- },
302
- {
303
- type: 'number',
304
- name: 'requests_per_day',
305
- message: 'Requests per day:',
306
- default: 10000,
307
- },
308
- ]);
64
+ throw err;
309
65
  }
310
- // Reliability Metrics (optional)
311
- console.log(chalk_1.default.bold('\n📊 Reliability Metrics (optional)'));
312
- const { addReliability } = await inquirer_1.default.prompt([
313
- {
314
- type: 'confirm',
315
- name: 'addReliability',
316
- message: 'Add reliability metrics?',
317
- default: false,
318
- },
319
- ]);
320
- let reliabilityMetrics;
321
- if (addReliability) {
322
- reliabilityMetrics = await inquirer_1.default.prompt([
323
- {
324
- type: 'number',
325
- name: 'uptime_percentage',
326
- message: 'Uptime percentage (e.g., 99.9):',
327
- default: 99.9,
328
- validate: (input) => (input >= 0 && input <= 100) || 'Must be between 0 and 100',
329
- },
330
- {
331
- type: 'number',
332
- name: 'avg_response_time_ms',
333
- message: 'Average response time (ms):',
334
- default: 150,
335
- },
336
- ]);
337
- }
338
- // Contact Information
339
- console.log(chalk_1.default.bold('\n📧 Contact Information'));
340
- const contactInfo = await inquirer_1.default.prompt([
341
- {
342
- type: 'input',
343
- name: 'email',
344
- message: 'Support email:',
345
- validate: (input) => {
346
- if (!input)
347
- return true;
348
- const emailRegex = /^[^\s@]+@[^\s@]+\.[^\s@]+$/;
349
- return emailRegex.test(input) || 'Must be a valid email';
350
- },
351
- },
352
- {
353
- type: 'input',
354
- name: 'support_url',
355
- message: 'Support URL (optional):',
356
- validate: (input) => {
357
- if (!input)
358
- return true;
359
- try {
360
- new URL(input);
361
- return true;
362
- }
363
- catch {
364
- return 'Must be a valid URL';
365
- }
366
- },
367
- },
368
- {
369
- type: 'input',
370
- name: 'github',
371
- message: 'GitHub URL (optional):',
372
- validate: (input) => {
373
- if (!input)
374
- return true;
375
- try {
376
- new URL(input);
377
- return input.includes('github.com') || 'Should be a GitHub URL';
378
- }
379
- catch {
380
- return 'Must be a valid URL';
381
- }
382
- },
383
- },
384
- ]);
385
- // Agent Notes
386
- console.log(chalk_1.default.bold('\n🤖 Agent Guidance'));
387
- const { agent_notes } = await inquirer_1.default.prompt([
388
- {
389
- type: 'input',
390
- name: 'agent_notes',
391
- message: 'Implementation guidance for AI agents (min 50 characters):',
392
- validate: (input) => input.trim().length >= 50 ||
393
- `Agent notes must be at least 50 characters (currently ${input.trim().length})`,
394
- },
395
- ]);
396
- // Registry Listing
397
- console.log(chalk_1.default.bold('\n📝 Registry'));
398
- const { listing_requested } = await inquirer_1.default.prompt([
399
- {
400
- type: 'confirm',
401
- name: 'listing_requested',
402
- message: 'Request listing in public AMP registry?',
403
- default: true,
404
- },
405
- ]);
406
- // Build the manifest
407
- const manifest = {
408
- spec_version: 'agentmanifest-0.1',
409
- name: basicInfo.name,
410
- version: basicInfo.version,
411
- description: basicInfo.description,
412
- ...(basicInfo.homepage && { homepage: basicInfo.homepage }),
413
- ...(basicInfo.documentation && { documentation: basicInfo.documentation }),
414
- categories: categoryInfo.categories,
415
- primary_category,
416
- endpoints,
417
- pricing: {
418
- model: pricingInfo.model,
419
- ...(pricingInfo.details && { details: pricingInfo.details }),
420
- },
421
- authentication: {
422
- type: authInfo.type,
423
- ...(authInfo.type !== 'none' && Object.keys(authConfig).length > 0 && { config: authConfig }),
424
- },
425
- ...(rateLimits && { rate_limits: rateLimits }),
426
- ...(reliabilityMetrics && { reliability_metrics: reliabilityMetrics }),
427
- ...(Object.keys(contactInfo).some((k) => contactInfo[k]) && {
428
- contact: Object.fromEntries(Object.entries(contactInfo).filter(([_, v]) => v)),
429
- }),
430
- agent_notes,
431
- listing_requested,
432
- last_updated: new Date().toISOString(),
433
- };
434
- // Write to file
435
- await promises_1.default.writeFile(outputPath, JSON.stringify(manifest, null, 2));
436
- console.log(chalk_1.default.green.bold('\n✅ Success!'));
437
- console.log(chalk_1.default.gray(`\nManifest created at: ${outputPath}`));
438
- console.log(chalk_1.default.gray('\nNext steps:'));
439
- console.log(chalk_1.default.cyan(' 1. Review the generated manifest'));
440
- console.log(chalk_1.default.cyan(' 2. Run "amp validate" to check compliance'));
441
- console.log(chalk_1.default.cyan(' 3. Run "amp publish" to submit to registry'));
442
66
  }
443
- catch (error) {
444
- if (error.isTtyError) {
445
- console.error(chalk_1.default.red('Prompt could not be rendered in the current environment'));
446
- }
447
- else {
448
- console.error(chalk_1.default.red('Error:'), error.message);
449
- }
450
- process.exit(1);
67
+ catch (err) {
68
+ if (err.code !== 'ENOENT')
69
+ throw err;
70
+ // File doesn't exist, continue
451
71
  }
72
+ const manifest = scaffoldManifest();
73
+ await promises_1.default.writeFile(outputPath, JSON.stringify(manifest, null, 2));
74
+ console.log(chalk_1.default.green.bold('\n✅ Created agent-manifest.json'));
75
+ console.log(chalk_1.default.gray('\nEdit the file, then run "amp validate".\n'));
452
76
  }
453
77
  //# sourceMappingURL=init.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":";;;;;AAuCA,kCAkCC;AAzED,2DAA6B;AAC7B,gDAAwB;AACxB,kDAA0B;AAC1B,wDAAgC;AAGhC,0FAA0F;AAC1F,SAAS,gBAAgB;IACvB,OAAO;QACL,YAAY,EAAE,mBAAmB;QACjC,IAAI,EAAE,QAAQ;QACd,OAAO,EAAE,OAAO;QAChB,WAAW,EACT,6HAA6H;QAC/H,UAAU,EAAE,CAAC,OAAO,CAAC;QACrB,gBAAgB,EAAE,WAAW;QAC7B,SAAS,EAAE;YACT;gBACE,IAAI,EAAE,UAAU;gBAChB,MAAM,EAAE,KAAK;gBACb,WAAW,EAAE,sEAAsE;gBACnF,UAAU,EAAE,EAAE;gBACd,oBAAoB,EAAE,sEAAsE;aAC7F;SACF;QACD,OAAO,EAAE;YACP,KAAK,EAAE,MAAM;YACb,SAAS,EAAE,EAAE,eAAe,EAAE,IAAI,EAAE,iBAAiB,EAAE,IAAI,EAAE;SAC9D;QACD,cAAc,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE;QACjD,WAAW,EAAE,EAAE,aAAa,EAAE,YAAY,EAAE;QAC5C,WAAW,EACT,wGAAwG;QAC1G,OAAO,EAAE,iBAAiB;QAC1B,iBAAiB,EAAE,KAAK;QACxB,YAAY,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;KACvC,CAAC;AACJ,CAAC;AAEM,KAAK,UAAU,WAAW;IAC/B,MAAM,UAAU,GAAG,cAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,qBAAqB,CAAC,CAAC;IAEnE,IAAI,CAAC;QACH,MAAM,kBAAE,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QAC5B,IAAI,CAAC;YACH,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,kBAAQ,CAAC,MAAM,CAAC;gBAC1C;oBACE,IAAI,EAAE,SAAS;oBACf,IAAI,EAAE,WAAW;oBACjB,OAAO,EAAE,gDAAgD;oBACzD,OAAO,EAAE,KAAK;iBACf;aACF,CAAC,CAAC;YACH,IAAI,CAAC,SAAS,EAAE,CAAC;gBACf,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC;gBAC1C,OAAO;YACT,CAAC;QACH,CAAC;QAAC,OAAO,GAAQ,EAAE,CAAC;YAClB,IAAI,GAAG,CAAC,UAAU,EAAE,CAAC;gBACnB,OAAO,CAAC,KAAK,CAAC,eAAK,CAAC,GAAG,CAAC,wGAAwG,CAAC,CAAC,CAAC;gBACnI,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;YACD,MAAM,GAAG,CAAC;QACZ,CAAC;IACH,CAAC;IAAC,OAAO,GAAQ,EAAE,CAAC;QAClB,IAAI,GAAG,CAAC,IAAI,KAAK,QAAQ;YAAE,MAAM,GAAG,CAAC;QACrC,+BAA+B;IACjC,CAAC;IAED,MAAM,QAAQ,GAAG,gBAAgB,EAAE,CAAC;IACpC,MAAM,kBAAE,CAAC,SAAS,CAAC,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;IAClE,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,IAAI,CAAC,iCAAiC,CAAC,CAAC,CAAC;IACjE,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,6CAA6C,CAAC,CAAC,CAAC;AACzE,CAAC"}
@@ -1,22 +1,53 @@
1
1
  /**
2
- * Standard categories defined in AMP specification v0.1
2
+ * Standard categories defined in AMP specification v0.2
3
3
  */
4
- export declare const STANDARD_CATEGORIES: readonly ["chemistry", "biology", "physics", "mathematics", "finance", "weather", "geography", "food_science", "engineering", "legal", "medical", "education", "translation", "media", "general"];
4
+ export declare const STANDARD_CATEGORIES: readonly ["food-science", "materials", "construction", "music-gear", "chemistry", "biology", "geography", "finance", "legal", "medical", "engineering", "agriculture", "computing", "language", "history", "commerce", "identity", "weather", "logistics", "other"];
5
5
  /**
6
- * Pricing models defined in AMP specification v0.1
6
+ * Primary categories defined in AMP specification v0.2
7
+ */
8
+ export declare const PRIMARY_CATEGORIES: readonly [{
9
+ readonly name: "Reference - Static or cached data";
10
+ readonly value: "reference";
11
+ }, {
12
+ readonly name: "Live - Real-time data";
13
+ readonly value: "live";
14
+ }, {
15
+ readonly name: "Computational - Processing or computation";
16
+ readonly value: "computational";
17
+ }, {
18
+ readonly name: "Transactional - Actions or transactions";
19
+ readonly value: "transactional";
20
+ }, {
21
+ readonly name: "Enrichment - Data augmentation";
22
+ readonly value: "enrichment";
23
+ }, {
24
+ readonly name: "Personal - User-specific data";
25
+ readonly value: "personal";
26
+ }, {
27
+ readonly name: "Discovery - Search or discovery";
28
+ readonly value: "discovery";
29
+ }];
30
+ /**
31
+ * Pricing models defined in AMP specification v0.2
7
32
  */
8
33
  export declare const PRICING_MODELS: readonly [{
9
34
  readonly name: "Free - No cost to use";
10
35
  readonly value: "free";
11
36
  }, {
12
- readonly name: "Usage Based - Pay per request";
13
- readonly value: "usage_based";
37
+ readonly name: "Per Query - Pay per request";
38
+ readonly value: "per-query";
14
39
  }, {
15
40
  readonly name: "Subscription - Fixed recurring fee";
16
41
  readonly value: "subscription";
42
+ }, {
43
+ readonly name: "Pay What You Want - Voluntary contributions";
44
+ readonly value: "pay-what-you-want";
45
+ }, {
46
+ readonly name: "Tiered - Multiple pricing tiers";
47
+ readonly value: "tiered";
17
48
  }];
18
49
  /**
19
- * Authentication types defined in AMP specification v0.1
50
+ * Authentication types defined in AMP specification v0.2
20
51
  */
21
52
  export declare const AUTH_TYPES: readonly [{
22
53
  readonly name: "None - No authentication required";
@@ -31,4 +62,17 @@ export declare const AUTH_TYPES: readonly [{
31
62
  readonly name: "Bearer Token - Bearer token auth";
32
63
  readonly value: "bearer";
33
64
  }];
65
+ /**
66
+ * Reliability maintained_by values defined in AMP specification v0.2
67
+ */
68
+ export declare const MAINTAINED_BY: readonly [{
69
+ readonly name: "Individual";
70
+ readonly value: "individual";
71
+ }, {
72
+ readonly name: "Organization";
73
+ readonly value: "organization";
74
+ }, {
75
+ readonly name: "Community";
76
+ readonly value: "community";
77
+ }];
34
78
  //# sourceMappingURL=constants.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,eAAO,MAAM,mBAAmB,mMAgBtB,CAAC;AAEX;;GAEG;AACH,eAAO,MAAM,cAAc;;;;;;;;;EAIjB,CAAC;AAEX;;GAEG;AACH,eAAO,MAAM,UAAU;;;;;;;;;;;;EAKb,CAAC"}
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,eAAO,MAAM,mBAAmB,qQAqBtB,CAAC;AAEX;;GAEG;AACH,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;EAQrB,CAAC;AAEX;;GAEG;AACH,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;EAMjB,CAAC;AAEX;;GAEG;AACH,eAAO,MAAM,UAAU;;;;;;;;;;;;EAKb,CAAC;AAEX;;GAEG;AACH,eAAO,MAAM,aAAa;;;;;;;;;EAIhB,CAAC"}
package/dist/constants.js CHANGED
@@ -1,36 +1,55 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.AUTH_TYPES = exports.PRICING_MODELS = exports.STANDARD_CATEGORIES = void 0;
3
+ exports.MAINTAINED_BY = exports.AUTH_TYPES = exports.PRICING_MODELS = exports.PRIMARY_CATEGORIES = exports.STANDARD_CATEGORIES = void 0;
4
4
  /**
5
- * Standard categories defined in AMP specification v0.1
5
+ * Standard categories defined in AMP specification v0.2
6
6
  */
7
7
  exports.STANDARD_CATEGORIES = [
8
+ 'food-science',
9
+ 'materials',
10
+ 'construction',
11
+ 'music-gear',
8
12
  'chemistry',
9
13
  'biology',
10
- 'physics',
11
- 'mathematics',
12
- 'finance',
13
- 'weather',
14
14
  'geography',
15
- 'food_science',
16
- 'engineering',
15
+ 'finance',
17
16
  'legal',
18
17
  'medical',
19
- 'education',
20
- 'translation',
21
- 'media',
22
- 'general',
18
+ 'engineering',
19
+ 'agriculture',
20
+ 'computing',
21
+ 'language',
22
+ 'history',
23
+ 'commerce',
24
+ 'identity',
25
+ 'weather',
26
+ 'logistics',
27
+ 'other',
23
28
  ];
24
29
  /**
25
- * Pricing models defined in AMP specification v0.1
30
+ * Primary categories defined in AMP specification v0.2
31
+ */
32
+ exports.PRIMARY_CATEGORIES = [
33
+ { name: 'Reference - Static or cached data', value: 'reference' },
34
+ { name: 'Live - Real-time data', value: 'live' },
35
+ { name: 'Computational - Processing or computation', value: 'computational' },
36
+ { name: 'Transactional - Actions or transactions', value: 'transactional' },
37
+ { name: 'Enrichment - Data augmentation', value: 'enrichment' },
38
+ { name: 'Personal - User-specific data', value: 'personal' },
39
+ { name: 'Discovery - Search or discovery', value: 'discovery' },
40
+ ];
41
+ /**
42
+ * Pricing models defined in AMP specification v0.2
26
43
  */
27
44
  exports.PRICING_MODELS = [
28
45
  { name: 'Free - No cost to use', value: 'free' },
29
- { name: 'Usage Based - Pay per request', value: 'usage_based' },
46
+ { name: 'Per Query - Pay per request', value: 'per-query' },
30
47
  { name: 'Subscription - Fixed recurring fee', value: 'subscription' },
48
+ { name: 'Pay What You Want - Voluntary contributions', value: 'pay-what-you-want' },
49
+ { name: 'Tiered - Multiple pricing tiers', value: 'tiered' },
31
50
  ];
32
51
  /**
33
- * Authentication types defined in AMP specification v0.1
52
+ * Authentication types defined in AMP specification v0.2
34
53
  */
35
54
  exports.AUTH_TYPES = [
36
55
  { name: 'None - No authentication required', value: 'none' },
@@ -38,4 +57,12 @@ exports.AUTH_TYPES = [
38
57
  { name: 'OAuth2 - OAuth 2.0 flow', value: 'oauth2' },
39
58
  { name: 'Bearer Token - Bearer token auth', value: 'bearer' },
40
59
  ];
60
+ /**
61
+ * Reliability maintained_by values defined in AMP specification v0.2
62
+ */
63
+ exports.MAINTAINED_BY = [
64
+ { name: 'Individual', value: 'individual' },
65
+ { name: 'Organization', value: 'organization' },
66
+ { name: 'Community', value: 'community' },
67
+ ];
41
68
  //# sourceMappingURL=constants.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":";;;AAAA;;GAEG;AACU,QAAA,mBAAmB,GAAG;IACjC,WAAW;IACX,SAAS;IACT,SAAS;IACT,aAAa;IACb,SAAS;IACT,SAAS;IACT,WAAW;IACX,cAAc;IACd,aAAa;IACb,OAAO;IACP,SAAS;IACT,WAAW;IACX,aAAa;IACb,OAAO;IACP,SAAS;CACD,CAAC;AAEX;;GAEG;AACU,QAAA,cAAc,GAAG;IAC5B,EAAE,IAAI,EAAE,uBAAuB,EAAE,KAAK,EAAE,MAAM,EAAE;IAChD,EAAE,IAAI,EAAE,+BAA+B,EAAE,KAAK,EAAE,aAAa,EAAE;IAC/D,EAAE,IAAI,EAAE,oCAAoC,EAAE,KAAK,EAAE,cAAc,EAAE;CAC7D,CAAC;AAEX;;GAEG;AACU,QAAA,UAAU,GAAG;IACxB,EAAE,IAAI,EAAE,mCAAmC,EAAE,KAAK,EAAE,MAAM,EAAE;IAC5D,EAAE,IAAI,EAAE,iCAAiC,EAAE,KAAK,EAAE,SAAS,EAAE;IAC7D,EAAE,IAAI,EAAE,yBAAyB,EAAE,KAAK,EAAE,QAAQ,EAAE;IACpD,EAAE,IAAI,EAAE,kCAAkC,EAAE,KAAK,EAAE,QAAQ,EAAE;CACrD,CAAC"}
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":";;;AAAA;;GAEG;AACU,QAAA,mBAAmB,GAAG;IACjC,cAAc;IACd,WAAW;IACX,cAAc;IACd,YAAY;IACZ,WAAW;IACX,SAAS;IACT,WAAW;IACX,SAAS;IACT,OAAO;IACP,SAAS;IACT,aAAa;IACb,aAAa;IACb,WAAW;IACX,UAAU;IACV,SAAS;IACT,UAAU;IACV,UAAU;IACV,SAAS;IACT,WAAW;IACX,OAAO;CACC,CAAC;AAEX;;GAEG;AACU,QAAA,kBAAkB,GAAG;IAChC,EAAE,IAAI,EAAE,mCAAmC,EAAE,KAAK,EAAE,WAAW,EAAE;IACjE,EAAE,IAAI,EAAE,uBAAuB,EAAE,KAAK,EAAE,MAAM,EAAE;IAChD,EAAE,IAAI,EAAE,2CAA2C,EAAE,KAAK,EAAE,eAAe,EAAE;IAC7E,EAAE,IAAI,EAAE,yCAAyC,EAAE,KAAK,EAAE,eAAe,EAAE;IAC3E,EAAE,IAAI,EAAE,gCAAgC,EAAE,KAAK,EAAE,YAAY,EAAE;IAC/D,EAAE,IAAI,EAAE,+BAA+B,EAAE,KAAK,EAAE,UAAU,EAAE;IAC5D,EAAE,IAAI,EAAE,iCAAiC,EAAE,KAAK,EAAE,WAAW,EAAE;CACvD,CAAC;AAEX;;GAEG;AACU,QAAA,cAAc,GAAG;IAC5B,EAAE,IAAI,EAAE,uBAAuB,EAAE,KAAK,EAAE,MAAM,EAAE;IAChD,EAAE,IAAI,EAAE,6BAA6B,EAAE,KAAK,EAAE,WAAW,EAAE;IAC3D,EAAE,IAAI,EAAE,oCAAoC,EAAE,KAAK,EAAE,cAAc,EAAE;IACrE,EAAE,IAAI,EAAE,6CAA6C,EAAE,KAAK,EAAE,mBAAmB,EAAE;IACnF,EAAE,IAAI,EAAE,iCAAiC,EAAE,KAAK,EAAE,QAAQ,EAAE;CACpD,CAAC;AAEX;;GAEG;AACU,QAAA,UAAU,GAAG;IACxB,EAAE,IAAI,EAAE,mCAAmC,EAAE,KAAK,EAAE,MAAM,EAAE;IAC5D,EAAE,IAAI,EAAE,iCAAiC,EAAE,KAAK,EAAE,SAAS,EAAE;IAC7D,EAAE,IAAI,EAAE,yBAAyB,EAAE,KAAK,EAAE,QAAQ,EAAE;IACpD,EAAE,IAAI,EAAE,kCAAkC,EAAE,KAAK,EAAE,QAAQ,EAAE;CACrD,CAAC;AAEX;;GAEG;AACU,QAAA,aAAa,GAAG;IAC3B,EAAE,IAAI,EAAE,YAAY,EAAE,KAAK,EAAE,YAAY,EAAE;IAC3C,EAAE,IAAI,EAAE,cAAc,EAAE,KAAK,EAAE,cAAc,EAAE;IAC/C,EAAE,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,WAAW,EAAE;CACjC,CAAC"}
package/dist/index.js CHANGED
@@ -15,7 +15,7 @@ program
15
15
  .version(packageJson.version);
16
16
  program
17
17
  .command('init')
18
- .description('Interactively create a new agent-manifest.json file')
18
+ .description('Scaffold a valid agent-manifest.json')
19
19
  .action(init_1.initCommand);
20
20
  program
21
21
  .command('validate')
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AAEA,yCAAoC;AACpC,2BAAkC;AAClC,+BAA4B;AAC5B,0CAA8C;AAC9C,kDAAsD;AACtD,gDAAoD;AAEpD,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,IAAA,iBAAY,EAAC,IAAA,WAAI,EAAC,SAAS,EAAE,iBAAiB,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC;AAE1F,MAAM,OAAO,GAAG,IAAI,mBAAO,EAAE,CAAC;AAE9B,OAAO;KACJ,IAAI,CAAC,KAAK,CAAC;KACX,WAAW,CAAC,iFAAiF,CAAC;KAC9F,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;AAEhC,OAAO;KACJ,OAAO,CAAC,MAAM,CAAC;KACf,WAAW,CAAC,qDAAqD,CAAC;KAClE,MAAM,CAAC,kBAAW,CAAC,CAAC;AAEvB,OAAO;KACJ,OAAO,CAAC,UAAU,CAAC;KACnB,WAAW,CAAC,wDAAwD,CAAC;KACrE,MAAM,CAAC,mBAAmB,EAAE,uBAAuB,EAAE,uBAAuB,CAAC;KAC7E,MAAM,CAAC,0BAAe,CAAC,CAAC;AAE3B,OAAO;KACJ,OAAO,CAAC,SAAS,CAAC;KAClB,WAAW,CAAC,8DAA8D,CAAC;KAC3E,MAAM,CAAC,mBAAmB,EAAE,uBAAuB,EAAE,uBAAuB,CAAC;KAC7E,MAAM,CAAC,wBAAc,CAAC,CAAC;AAE1B,OAAO,CAAC,KAAK,EAAE,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AAEA,yCAAoC;AACpC,2BAAkC;AAClC,+BAA4B;AAC5B,0CAA8C;AAC9C,kDAAsD;AACtD,gDAAoD;AAEpD,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,IAAA,iBAAY,EAAC,IAAA,WAAI,EAAC,SAAS,EAAE,iBAAiB,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC;AAE1F,MAAM,OAAO,GAAG,IAAI,mBAAO,EAAE,CAAC;AAE9B,OAAO;KACJ,IAAI,CAAC,KAAK,CAAC;KACX,WAAW,CAAC,iFAAiF,CAAC;KAC9F,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;AAEhC,OAAO;KACJ,OAAO,CAAC,MAAM,CAAC;KACf,WAAW,CAAC,sCAAsC,CAAC;KACnD,MAAM,CAAC,kBAAW,CAAC,CAAC;AAEvB,OAAO;KACJ,OAAO,CAAC,UAAU,CAAC;KACnB,WAAW,CAAC,wDAAwD,CAAC;KACrE,MAAM,CAAC,mBAAmB,EAAE,uBAAuB,EAAE,uBAAuB,CAAC;KAC7E,MAAM,CAAC,0BAAe,CAAC,CAAC;AAE3B,OAAO;KACJ,OAAO,CAAC,SAAS,CAAC;KAClB,WAAW,CAAC,8DAA8D,CAAC;KAC3E,MAAM,CAAC,mBAAmB,EAAE,uBAAuB,EAAE,uBAAuB,CAAC;KAC7E,MAAM,CAAC,wBAAc,CAAC,CAAC;AAE1B,OAAO,CAAC,KAAK,EAAE,CAAC"}
package/dist/types.d.ts CHANGED
@@ -1,93 +1,65 @@
1
1
  /**
2
- * Type definitions for Agent Manifest Protocol v0.1
2
+ * Type definitions for Agent Manifest Protocol v0.2
3
3
  */
4
- export interface Parameter {
5
- type: 'string' | 'number' | 'boolean' | 'array' | 'object';
6
- required: boolean;
7
- description: string;
8
- default?: any;
9
- enum?: any[];
10
- }
11
- export interface ResponseSchema {
4
+ export interface EndpointParameter {
5
+ name: string;
12
6
  type: string;
7
+ required: boolean;
13
8
  description: string;
14
- properties?: Record<string, any>;
15
- }
16
- export interface EndpointExample {
17
- request: string;
18
- response: any;
19
- description?: string;
20
9
  }
21
10
  export interface Endpoint {
22
11
  path: string;
23
12
  method: 'GET' | 'POST' | 'PUT' | 'DELETE' | 'PATCH';
24
13
  description: string;
25
- parameters?: {
26
- query?: Record<string, Parameter>;
27
- body?: Record<string, Parameter>;
28
- path?: Record<string, Parameter>;
29
- };
30
- response: ResponseSchema;
31
- examples?: EndpointExample[];
14
+ parameters?: EndpointParameter[];
15
+ response_description: string;
32
16
  }
33
- export interface PricingDetails {
34
- free_tier?: string;
35
- rates?: {
36
- per_request?: number;
37
- per_month?: number;
38
- currency?: string;
39
- };
40
- billing_period?: string;
17
+ export interface FreeTier {
18
+ queries_per_day?: number | null;
19
+ queries_per_month?: number | null;
20
+ }
21
+ export interface PaidTier {
22
+ amount_usd: number;
23
+ unit: string;
24
+ description: string;
41
25
  }
42
26
  export interface Pricing {
43
- model: 'free' | 'usage_based' | 'subscription';
44
- details?: string | PricingDetails;
27
+ model: 'free' | 'per-query' | 'subscription' | 'pay-what-you-want' | 'tiered';
28
+ free_tier?: FreeTier | null;
29
+ paid_tier?: PaidTier | null;
30
+ support_url?: string | null;
45
31
  }
46
- export interface AuthenticationConfig {
47
- header?: string;
48
- signup_url?: string;
49
- oauth_flow?: string;
50
- token_url?: string;
51
- scopes?: string[];
32
+ export interface Payment {
33
+ provider?: string;
34
+ checkout_url: string;
35
+ key_provisioning_url?: string;
36
+ accepted_methods?: string[];
37
+ prepay_required?: boolean;
52
38
  }
53
39
  export interface Authentication {
54
- type: 'none' | 'api_key' | 'oauth2' | 'bearer';
55
- config?: AuthenticationConfig;
56
- }
57
- export interface RateLimits {
58
- requests_per_minute?: number;
59
- requests_per_hour?: number;
60
- requests_per_day?: number;
61
- }
62
- export interface ReliabilityMetrics {
63
- uptime_percentage?: number;
64
- avg_response_time_ms?: number;
65
- last_30_days_uptime?: number;
66
- maintained_by?: string;
40
+ required: boolean;
41
+ type: 'api_key' | 'oauth2' | 'bearer' | 'none' | null;
42
+ instructions?: string | null;
67
43
  }
68
- export interface Contact {
69
- email?: string;
70
- support_url?: string;
71
- github?: string;
72
- twitter?: string;
44
+ export interface Reliability {
45
+ maintained_by: 'individual' | 'organization' | 'community';
46
+ status_url?: string | null;
47
+ expected_uptime_pct?: number | null;
73
48
  }
74
49
  export interface AgentManifest {
75
- spec_version: 'agentmanifest-0.1';
50
+ spec_version: 'agentmanifest-0.2';
76
51
  name: string;
77
52
  version: string;
78
53
  description: string;
79
- homepage?: string;
80
- documentation?: string;
81
54
  categories: string[];
82
- primary_category: string;
55
+ primary_category: 'reference' | 'live' | 'computational' | 'transactional' | 'enrichment' | 'personal' | 'discovery';
83
56
  endpoints: Endpoint[];
84
57
  pricing: Pricing;
85
58
  authentication: Authentication;
86
- rate_limits?: RateLimits;
87
- reliability_metrics?: ReliabilityMetrics;
88
- contact?: Contact;
59
+ reliability: Reliability;
89
60
  agent_notes: string;
90
- listing_requested?: boolean;
61
+ contact: string;
62
+ listing_requested: boolean;
91
63
  last_updated: string;
92
64
  }
93
65
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,OAAO,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,QAAQ;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,KAAK,GAAG,MAAM,GAAG,KAAK,GAAG,QAAQ,GAAG,OAAO,CAAC;IACpD,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,iBAAiB,EAAE,CAAC;IACjC,oBAAoB,EAAE,MAAM,CAAC;CAC9B;AAED,MAAM,WAAW,QAAQ;IACvB,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,iBAAiB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACnC;AAED,MAAM,WAAW,QAAQ;IACvB,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,OAAO;IACtB,KAAK,EAAE,MAAM,GAAG,WAAW,GAAG,cAAc,GAAG,mBAAmB,GAAG,QAAQ,CAAC;IAC9E,SAAS,CAAC,EAAE,QAAQ,GAAG,IAAI,CAAC;IAC5B,SAAS,CAAC,EAAE,QAAQ,GAAG,IAAI,CAAC;IAC5B,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC7B;AAED,MAAM,WAAW,OAAO;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC5B,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B;AAED,MAAM,WAAW,cAAc;IAC7B,QAAQ,EAAE,OAAO,CAAC;IAClB,IAAI,EAAE,SAAS,GAAG,QAAQ,GAAG,QAAQ,GAAG,MAAM,GAAG,IAAI,CAAC;IACtD,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC9B;AAED,MAAM,WAAW,WAAW;IAC1B,aAAa,EAAE,YAAY,GAAG,cAAc,GAAG,WAAW,CAAC;IAC3D,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,mBAAmB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACrC;AAED,MAAM,WAAW,aAAa;IAC5B,YAAY,EAAE,mBAAmB,CAAC;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,gBAAgB,EAAE,WAAW,GAAG,MAAM,GAAG,eAAe,GAAG,eAAe,GAAG,YAAY,GAAG,UAAU,GAAG,WAAW,CAAC;IACrH,SAAS,EAAE,QAAQ,EAAE,CAAC;IACtB,OAAO,EAAE,OAAO,CAAC;IACjB,cAAc,EAAE,cAAc,CAAC;IAC/B,WAAW,EAAE,WAAW,CAAC;IACzB,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,iBAAiB,EAAE,OAAO,CAAC;IAC3B,YAAY,EAAE,MAAM,CAAC;CACtB"}
package/dist/types.js CHANGED
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  /**
3
- * Type definitions for Agent Manifest Protocol v0.1
3
+ * Type definitions for Agent Manifest Protocol v0.2
4
4
  */
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  //# sourceMappingURL=types.js.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@agentmanifest/cli",
3
- "version": "0.1.11",
3
+ "version": "0.2.0",
4
4
  "description": "CLI tool for creating, validating, and publishing Agent Manifest Protocol (AMP) manifests",
5
5
  "main": "dist/index.js",
6
6
  "bin": {