capman 0.5.4 → 0.6.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.
Files changed (59) hide show
  1. package/CHANGELOG.md +46 -0
  2. package/CODEBASE.md +111 -66
  3. package/README.md +45 -4
  4. package/bin/lib/cmd-generate.js +200 -40
  5. package/bin/lib/cmd-help.js +3 -0
  6. package/dist/cjs/cache.d.ts.map +1 -1
  7. package/dist/cjs/cache.js +22 -5
  8. package/dist/cjs/cache.js.map +1 -1
  9. package/dist/cjs/engine.d.ts +53 -1
  10. package/dist/cjs/engine.d.ts.map +1 -1
  11. package/dist/cjs/engine.js +252 -17
  12. package/dist/cjs/engine.js.map +1 -1
  13. package/dist/cjs/generator.d.ts.map +1 -1
  14. package/dist/cjs/generator.js +7 -1
  15. package/dist/cjs/generator.js.map +1 -1
  16. package/dist/cjs/index.d.ts +1 -0
  17. package/dist/cjs/index.d.ts.map +1 -1
  18. package/dist/cjs/index.js +3 -1
  19. package/dist/cjs/index.js.map +1 -1
  20. package/dist/cjs/learning.d.ts.map +1 -1
  21. package/dist/cjs/learning.js +51 -30
  22. package/dist/cjs/learning.js.map +1 -1
  23. package/dist/cjs/matcher.d.ts +69 -9
  24. package/dist/cjs/matcher.d.ts.map +1 -1
  25. package/dist/cjs/matcher.js +328 -43
  26. package/dist/cjs/matcher.js.map +1 -1
  27. package/dist/cjs/parser.d.ts.map +1 -1
  28. package/dist/cjs/parser.js +15 -8
  29. package/dist/cjs/parser.js.map +1 -1
  30. package/dist/cjs/resolver.d.ts +1 -0
  31. package/dist/cjs/resolver.d.ts.map +1 -1
  32. package/dist/cjs/resolver.js +16 -5
  33. package/dist/cjs/resolver.js.map +1 -1
  34. package/dist/cjs/schema.d.ts +64 -46
  35. package/dist/cjs/schema.d.ts.map +1 -1
  36. package/dist/cjs/schema.js +2 -1
  37. package/dist/cjs/schema.js.map +1 -1
  38. package/dist/cjs/types.d.ts +8 -2
  39. package/dist/cjs/types.d.ts.map +1 -1
  40. package/dist/cjs/version.d.ts +1 -1
  41. package/dist/cjs/version.js +1 -1
  42. package/dist/esm/cache.js +22 -5
  43. package/dist/esm/engine.d.ts +53 -1
  44. package/dist/esm/engine.js +255 -20
  45. package/dist/esm/generator.js +7 -1
  46. package/dist/esm/index.d.ts +1 -0
  47. package/dist/esm/index.js +1 -0
  48. package/dist/esm/learning.js +52 -31
  49. package/dist/esm/matcher.d.ts +69 -9
  50. package/dist/esm/matcher.js +321 -42
  51. package/dist/esm/parser.js +15 -8
  52. package/dist/esm/resolver.d.ts +1 -0
  53. package/dist/esm/resolver.js +16 -6
  54. package/dist/esm/schema.d.ts +64 -46
  55. package/dist/esm/schema.js +2 -1
  56. package/dist/esm/types.d.ts +8 -2
  57. package/dist/esm/version.d.ts +1 -1
  58. package/dist/esm/version.js +1 -1
  59. package/package.json +1 -1
@@ -11,20 +11,23 @@ export declare const CapmanConfigSchema: z.ZodEffects<z.ZodObject<{
11
11
  name: z.ZodString;
12
12
  description: z.ZodString;
13
13
  required: z.ZodBoolean;
14
- source: z.ZodEnum<["user_query", "session", "context", "static"]>;
14
+ source: z.ZodEnum<["user_query", "session"]>;
15
15
  default: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNumber, z.ZodBoolean]>>;
16
+ pattern: z.ZodOptional<z.ZodString>;
16
17
  }, "strip", z.ZodTypeAny, {
17
18
  name: string;
18
- required: boolean;
19
19
  description: string;
20
- source: "user_query" | "session" | "context" | "static";
20
+ required: boolean;
21
+ source: "user_query" | "session";
21
22
  default?: string | number | boolean | undefined;
23
+ pattern?: string | undefined;
22
24
  }, {
23
25
  name: string;
24
- required: boolean;
25
26
  description: string;
26
- source: "user_query" | "session" | "context" | "static";
27
+ required: boolean;
28
+ source: "user_query" | "session";
27
29
  default?: string | number | boolean | undefined;
30
+ pattern?: string | undefined;
28
31
  }>, "many">;
29
32
  returns: z.ZodArray<z.ZodString, "many">;
30
33
  resolver: z.ZodDiscriminatedUnion<"type", [z.ZodObject<{
@@ -147,14 +150,15 @@ export declare const CapmanConfigSchema: z.ZodEffects<z.ZodObject<{
147
150
  }, "strip", z.ZodTypeAny, {
148
151
  name: string;
149
152
  id: string;
153
+ description: string;
150
154
  params: {
151
155
  name: string;
152
- required: boolean;
153
156
  description: string;
154
- source: "user_query" | "session" | "context" | "static";
157
+ required: boolean;
158
+ source: "user_query" | "session";
155
159
  default?: string | number | boolean | undefined;
160
+ pattern?: string | undefined;
156
161
  }[];
157
- description: string;
158
162
  returns: string[];
159
163
  resolver: {
160
164
  type: "api";
@@ -189,14 +193,15 @@ export declare const CapmanConfigSchema: z.ZodEffects<z.ZodObject<{
189
193
  }, {
190
194
  name: string;
191
195
  id: string;
196
+ description: string;
192
197
  params: {
193
198
  name: string;
194
- required: boolean;
195
199
  description: string;
196
- source: "user_query" | "session" | "context" | "static";
200
+ required: boolean;
201
+ source: "user_query" | "session";
197
202
  default?: string | number | boolean | undefined;
203
+ pattern?: string | undefined;
198
204
  }[];
199
- description: string;
200
205
  returns: string[];
201
206
  resolver: {
202
207
  type: "api";
@@ -231,14 +236,15 @@ export declare const CapmanConfigSchema: z.ZodEffects<z.ZodObject<{
231
236
  }>, "many">, {
232
237
  name: string;
233
238
  id: string;
239
+ description: string;
234
240
  params: {
235
241
  name: string;
236
- required: boolean;
237
242
  description: string;
238
- source: "user_query" | "session" | "context" | "static";
243
+ required: boolean;
244
+ source: "user_query" | "session";
239
245
  default?: string | number | boolean | undefined;
246
+ pattern?: string | undefined;
240
247
  }[];
241
- description: string;
242
248
  returns: string[];
243
249
  resolver: {
244
250
  type: "api";
@@ -273,14 +279,15 @@ export declare const CapmanConfigSchema: z.ZodEffects<z.ZodObject<{
273
279
  }[], {
274
280
  name: string;
275
281
  id: string;
282
+ description: string;
276
283
  params: {
277
284
  name: string;
278
- required: boolean;
279
285
  description: string;
280
- source: "user_query" | "session" | "context" | "static";
286
+ required: boolean;
287
+ source: "user_query" | "session";
281
288
  default?: string | number | boolean | undefined;
289
+ pattern?: string | undefined;
282
290
  }[];
283
- description: string;
284
291
  returns: string[];
285
292
  resolver: {
286
293
  type: "api";
@@ -318,14 +325,15 @@ export declare const CapmanConfigSchema: z.ZodEffects<z.ZodObject<{
318
325
  capabilities: {
319
326
  name: string;
320
327
  id: string;
328
+ description: string;
321
329
  params: {
322
330
  name: string;
323
- required: boolean;
324
331
  description: string;
325
- source: "user_query" | "session" | "context" | "static";
332
+ required: boolean;
333
+ source: "user_query" | "session";
326
334
  default?: string | number | boolean | undefined;
335
+ pattern?: string | undefined;
327
336
  }[];
328
- description: string;
329
337
  returns: string[];
330
338
  resolver: {
331
339
  type: "api";
@@ -364,14 +372,15 @@ export declare const CapmanConfigSchema: z.ZodEffects<z.ZodObject<{
364
372
  capabilities: {
365
373
  name: string;
366
374
  id: string;
375
+ description: string;
367
376
  params: {
368
377
  name: string;
369
- required: boolean;
370
378
  description: string;
371
- source: "user_query" | "session" | "context" | "static";
379
+ required: boolean;
380
+ source: "user_query" | "session";
372
381
  default?: string | number | boolean | undefined;
382
+ pattern?: string | undefined;
373
383
  }[];
374
- description: string;
375
384
  returns: string[];
376
385
  resolver: {
377
386
  type: "api";
@@ -410,14 +419,15 @@ export declare const CapmanConfigSchema: z.ZodEffects<z.ZodObject<{
410
419
  capabilities: {
411
420
  name: string;
412
421
  id: string;
422
+ description: string;
413
423
  params: {
414
424
  name: string;
415
- required: boolean;
416
425
  description: string;
417
- source: "user_query" | "session" | "context" | "static";
426
+ required: boolean;
427
+ source: "user_query" | "session";
418
428
  default?: string | number | boolean | undefined;
429
+ pattern?: string | undefined;
419
430
  }[];
420
- description: string;
421
431
  returns: string[];
422
432
  resolver: {
423
433
  type: "api";
@@ -456,14 +466,15 @@ export declare const CapmanConfigSchema: z.ZodEffects<z.ZodObject<{
456
466
  capabilities: {
457
467
  name: string;
458
468
  id: string;
469
+ description: string;
459
470
  params: {
460
471
  name: string;
461
- required: boolean;
462
472
  description: string;
463
- source: "user_query" | "session" | "context" | "static";
473
+ required: boolean;
474
+ source: "user_query" | "session";
464
475
  default?: string | number | boolean | undefined;
476
+ pattern?: string | undefined;
465
477
  }[];
466
- description: string;
467
478
  returns: string[];
468
479
  resolver: {
469
480
  type: "api";
@@ -511,20 +522,23 @@ export declare const ManifestSchema: z.ZodObject<{
511
522
  name: z.ZodString;
512
523
  description: z.ZodString;
513
524
  required: z.ZodBoolean;
514
- source: z.ZodEnum<["user_query", "session", "context", "static"]>;
525
+ source: z.ZodEnum<["user_query", "session"]>;
515
526
  default: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNumber, z.ZodBoolean]>>;
527
+ pattern: z.ZodOptional<z.ZodString>;
516
528
  }, "strip", z.ZodTypeAny, {
517
529
  name: string;
518
- required: boolean;
519
530
  description: string;
520
- source: "user_query" | "session" | "context" | "static";
531
+ required: boolean;
532
+ source: "user_query" | "session";
521
533
  default?: string | number | boolean | undefined;
534
+ pattern?: string | undefined;
522
535
  }, {
523
536
  name: string;
524
- required: boolean;
525
537
  description: string;
526
- source: "user_query" | "session" | "context" | "static";
538
+ required: boolean;
539
+ source: "user_query" | "session";
527
540
  default?: string | number | boolean | undefined;
541
+ pattern?: string | undefined;
528
542
  }>, "many">;
529
543
  returns: z.ZodArray<z.ZodString, "many">;
530
544
  resolver: z.ZodDiscriminatedUnion<"type", [z.ZodObject<{
@@ -647,14 +661,15 @@ export declare const ManifestSchema: z.ZodObject<{
647
661
  }, "strip", z.ZodTypeAny, {
648
662
  name: string;
649
663
  id: string;
664
+ description: string;
650
665
  params: {
651
666
  name: string;
652
- required: boolean;
653
667
  description: string;
654
- source: "user_query" | "session" | "context" | "static";
668
+ required: boolean;
669
+ source: "user_query" | "session";
655
670
  default?: string | number | boolean | undefined;
671
+ pattern?: string | undefined;
656
672
  }[];
657
- description: string;
658
673
  returns: string[];
659
674
  resolver: {
660
675
  type: "api";
@@ -689,14 +704,15 @@ export declare const ManifestSchema: z.ZodObject<{
689
704
  }, {
690
705
  name: string;
691
706
  id: string;
707
+ description: string;
692
708
  params: {
693
709
  name: string;
694
- required: boolean;
695
710
  description: string;
696
- source: "user_query" | "session" | "context" | "static";
711
+ required: boolean;
712
+ source: "user_query" | "session";
697
713
  default?: string | number | boolean | undefined;
714
+ pattern?: string | undefined;
698
715
  }[];
699
- description: string;
700
716
  returns: string[];
701
717
  resolver: {
702
718
  type: "api";
@@ -735,14 +751,15 @@ export declare const ManifestSchema: z.ZodObject<{
735
751
  capabilities: {
736
752
  name: string;
737
753
  id: string;
754
+ description: string;
738
755
  params: {
739
756
  name: string;
740
- required: boolean;
741
757
  description: string;
742
- source: "user_query" | "session" | "context" | "static";
758
+ required: boolean;
759
+ source: "user_query" | "session";
743
760
  default?: string | number | boolean | undefined;
761
+ pattern?: string | undefined;
744
762
  }[];
745
- description: string;
746
763
  returns: string[];
747
764
  resolver: {
748
765
  type: "api";
@@ -782,14 +799,15 @@ export declare const ManifestSchema: z.ZodObject<{
782
799
  capabilities: {
783
800
  name: string;
784
801
  id: string;
802
+ description: string;
785
803
  params: {
786
804
  name: string;
787
- required: boolean;
788
805
  description: string;
789
- source: "user_query" | "session" | "context" | "static";
806
+ required: boolean;
807
+ source: "user_query" | "session";
790
808
  default?: string | number | boolean | undefined;
809
+ pattern?: string | undefined;
791
810
  }[];
792
- description: string;
793
811
  returns: string[];
794
812
  resolver: {
795
813
  type: "api";
@@ -4,8 +4,9 @@ const CapabilityParamSchema = z.object({
4
4
  name: z.string().min(1, 'param name is required'),
5
5
  description: z.string().min(1, 'param description is required'),
6
6
  required: z.boolean(),
7
- source: z.enum(['user_query', 'session', 'context', 'static']),
7
+ source: z.enum(['user_query', 'session']),
8
8
  default: z.union([z.string(), z.number(), z.boolean()]).optional(),
9
+ pattern: z.string().optional(),
9
10
  });
10
11
  // ─── Resolver Schemas ─────────────────────────────────────────────────────────
11
12
  const ApiResolverSchema = z.object({
@@ -4,8 +4,14 @@ export interface CapabilityParam {
4
4
  name: string;
5
5
  description: string;
6
6
  required: boolean;
7
- source: 'user_query' | 'session' | 'context' | 'static';
8
- default?: string | number | boolean;
7
+ source: 'user_query' | 'session';
8
+ /**
9
+ * Optional extraction hint. Either a named type or an example template.
10
+ * Named types: 'email' | 'date' | 'orderId' | 'url'
11
+ * Example template: "order {paramName}" — extracts token after "order"
12
+ * When provided, pattern matching runs before keyword heuristics.
13
+ */
14
+ pattern?: string;
9
15
  }
10
16
  export interface ApiResolver {
11
17
  type: 'api';
@@ -1 +1 @@
1
- export declare const VERSION = "0.5.3";
1
+ export declare const VERSION = "0.5.5";
@@ -1,2 +1,2 @@
1
1
  // Auto-generated by scripts/version.js — do not edit manually
2
- export const VERSION = '0.5.3';
2
+ export const VERSION = '0.5.5';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "capman",
3
- "version": "0.5.4",
3
+ "version": "0.6.0",
4
4
  "description": "Capability Manifest Engine — let AI agents interact with your app without navigating the UI",
5
5
  "main": "./dist/cjs/index.js",
6
6
  "module": "./dist/esm/index.js",