@tokenrip/cli 1.1.5 → 1.1.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 (108) hide show
  1. package/AGENTS.md +150 -72
  2. package/README.md +258 -128
  3. package/SKILL.md +213 -79
  4. package/dist/auth-client.js +1 -1
  5. package/dist/auth-client.js.map +1 -1
  6. package/dist/cjs/auth-client.js +1 -1
  7. package/dist/cjs/auth-client.js.map +1 -1
  8. package/dist/cjs/client.js +2 -2
  9. package/dist/cjs/client.js.map +1 -1
  10. package/dist/cjs/commands/archive.js +17 -0
  11. package/dist/cjs/commands/archive.js.map +1 -0
  12. package/dist/cjs/commands/auth.js +36 -16
  13. package/dist/cjs/commands/auth.js.map +1 -1
  14. package/dist/cjs/commands/collection.js +70 -0
  15. package/dist/cjs/commands/collection.js.map +1 -0
  16. package/dist/cjs/commands/config.js +1 -1
  17. package/dist/cjs/commands/config.js.map +1 -1
  18. package/dist/cjs/commands/contacts.js +3 -3
  19. package/dist/cjs/commands/contacts.js.map +1 -1
  20. package/dist/cjs/commands/inbox.js +9 -3
  21. package/dist/cjs/commands/inbox.js.map +1 -1
  22. package/dist/cjs/commands/link.js +38 -0
  23. package/dist/cjs/commands/link.js.map +1 -0
  24. package/dist/cjs/commands/operator-link.js +1 -1
  25. package/dist/cjs/commands/operator-link.js.map +1 -1
  26. package/dist/cjs/commands/publish.js +72 -1
  27. package/dist/cjs/commands/publish.js.map +1 -1
  28. package/dist/cjs/commands/search.js +33 -0
  29. package/dist/cjs/commands/search.js.map +1 -0
  30. package/dist/cjs/commands/share.js +1 -1
  31. package/dist/cjs/commands/share.js.map +1 -1
  32. package/dist/cjs/commands/status.js +4 -0
  33. package/dist/cjs/commands/status.js.map +1 -1
  34. package/dist/cjs/commands/thread.js +34 -1
  35. package/dist/cjs/commands/thread.js.map +1 -1
  36. package/dist/cjs/config.js.map +1 -1
  37. package/dist/cjs/contacts.js +6 -6
  38. package/dist/cjs/contacts.js.map +1 -1
  39. package/dist/cjs/crypto.js +1 -1
  40. package/dist/cjs/crypto.js.map +1 -1
  41. package/dist/cjs/formatters.js +147 -7
  42. package/dist/cjs/formatters.js.map +1 -1
  43. package/dist/cjs/identity.js +4 -0
  44. package/dist/cjs/identity.js.map +1 -1
  45. package/dist/cjs/index.js +3 -1
  46. package/dist/cjs/index.js.map +1 -1
  47. package/dist/cjs/migrations.js +55 -0
  48. package/dist/cjs/migrations.js.map +1 -0
  49. package/dist/cjs/output.js +11 -7
  50. package/dist/cjs/output.js.map +1 -1
  51. package/dist/cli.js +287 -95
  52. package/dist/cli.js.map +1 -1
  53. package/dist/client.js +2 -2
  54. package/dist/client.js.map +1 -1
  55. package/dist/commands/archive.d.ts +2 -0
  56. package/dist/commands/archive.js +13 -0
  57. package/dist/commands/archive.js.map +1 -0
  58. package/dist/commands/auth.js +38 -18
  59. package/dist/commands/auth.js.map +1 -1
  60. package/dist/commands/collection.d.ts +17 -0
  61. package/dist/commands/collection.js +61 -0
  62. package/dist/commands/collection.js.map +1 -0
  63. package/dist/commands/config.js +2 -2
  64. package/dist/commands/config.js.map +1 -1
  65. package/dist/commands/contacts.js +4 -4
  66. package/dist/commands/contacts.js.map +1 -1
  67. package/dist/commands/inbox.d.ts +1 -0
  68. package/dist/commands/inbox.js +9 -3
  69. package/dist/commands/inbox.js.map +1 -1
  70. package/dist/commands/link.d.ts +5 -0
  71. package/dist/commands/link.js +35 -0
  72. package/dist/commands/link.js.map +1 -0
  73. package/dist/commands/operator-link.js +1 -1
  74. package/dist/commands/operator-link.js.map +1 -1
  75. package/dist/commands/publish.d.ts +4 -0
  76. package/dist/commands/publish.js +72 -1
  77. package/dist/commands/publish.js.map +1 -1
  78. package/dist/commands/search.d.ts +12 -0
  79. package/dist/commands/search.js +30 -0
  80. package/dist/commands/search.js.map +1 -0
  81. package/dist/commands/share.js +1 -1
  82. package/dist/commands/share.js.map +1 -1
  83. package/dist/commands/status.d.ts +2 -0
  84. package/dist/commands/status.js +4 -0
  85. package/dist/commands/status.js.map +1 -1
  86. package/dist/commands/thread.d.ts +7 -0
  87. package/dist/commands/thread.js +32 -2
  88. package/dist/commands/thread.js.map +1 -1
  89. package/dist/config.d.ts +1 -0
  90. package/dist/config.js.map +1 -1
  91. package/dist/contacts.js +6 -6
  92. package/dist/contacts.js.map +1 -1
  93. package/dist/crypto.js +1 -1
  94. package/dist/crypto.js.map +1 -1
  95. package/dist/formatters.d.ts +12 -0
  96. package/dist/formatters.js +134 -6
  97. package/dist/formatters.js.map +1 -1
  98. package/dist/identity.js +4 -0
  99. package/dist/identity.js.map +1 -1
  100. package/dist/index.d.ts +1 -0
  101. package/dist/index.js +1 -0
  102. package/dist/index.js.map +1 -1
  103. package/dist/migrations.d.ts +1 -0
  104. package/dist/migrations.js +52 -0
  105. package/dist/migrations.js.map +1 -0
  106. package/dist/output.js +11 -7
  107. package/dist/output.js.map +1 -1
  108. package/package.json +4 -3
@@ -4,11 +4,80 @@ import { requireAuthClient } from '../auth-client.js';
4
4
  import { CliError } from '../errors.js';
5
5
  import { outputSuccess } from '../output.js';
6
6
  import { formatAssetCreated } from '../formatters.js';
7
- const VALID_TYPES = ['markdown', 'html', 'chart', 'code', 'text', 'json'];
7
+ const VALID_TYPES = ['markdown', 'html', 'chart', 'code', 'text', 'json', 'collection', 'csv'];
8
8
  export async function publish(filePath, options) {
9
9
  if (!VALID_TYPES.includes(options.type)) {
10
10
  throw new CliError('INVALID_TYPE', `Type must be one of: ${VALID_TYPES.join(', ')}`);
11
11
  }
12
+ // Collection → CSV import path: single-command creation of a collection from a CSV file
13
+ if (options.type === 'collection' && options.fromCsv) {
14
+ const absPath = path.resolve(filePath);
15
+ if (!fs.existsSync(absPath)) {
16
+ throw new CliError('FILE_NOT_FOUND', `File not found: ${absPath}`);
17
+ }
18
+ const content = fs.readFileSync(absPath, 'utf-8');
19
+ const title = options.title || path.basename(absPath, path.extname(absPath));
20
+ if (options.dryRun) {
21
+ outputSuccess({ dryRun: true, action: 'would create collection from csv', title, rows: content.split('\n').length }, formatAssetCreated);
22
+ return;
23
+ }
24
+ const body = {
25
+ type: 'collection',
26
+ from_csv: true,
27
+ content,
28
+ title,
29
+ };
30
+ if (options.headers)
31
+ body.headers = true;
32
+ if (options.schema)
33
+ body.schema = JSON.parse(options.schema);
34
+ if (options.alias)
35
+ body.alias = options.alias;
36
+ if (options.parent)
37
+ body.parentAssetId = options.parent;
38
+ if (options.context)
39
+ body.creatorContext = options.context;
40
+ if (options.refs)
41
+ body.inputReferences = options.refs.split(',').map((r) => r.trim());
42
+ const { client } = requireAuthClient();
43
+ const { data } = await client.post('/v0/assets', body);
44
+ const url = data.data.url || `https://tokenrip.com/s/${data.data.id}`;
45
+ outputSuccess({ id: data.data.id, url, title: data.data.title, type: data.data.type }, formatAssetCreated);
46
+ return;
47
+ }
48
+ // Collection schema-only path
49
+ if (options.type === 'collection') {
50
+ let schema;
51
+ if (options.schema) {
52
+ schema = JSON.parse(options.schema);
53
+ }
54
+ else {
55
+ const absPath = path.resolve(filePath);
56
+ if (!fs.existsSync(absPath)) {
57
+ throw new CliError('FILE_NOT_FOUND', `File not found: ${absPath}`);
58
+ }
59
+ schema = JSON.parse(fs.readFileSync(absPath, 'utf-8'));
60
+ }
61
+ const title = options.title || 'Untitled Collection';
62
+ if (options.dryRun) {
63
+ outputSuccess({ dryRun: true, action: 'would create collection', title, schema }, formatAssetCreated);
64
+ return;
65
+ }
66
+ const { client } = requireAuthClient();
67
+ const body = { type: 'collection', title, schema };
68
+ if (options.alias)
69
+ body.alias = options.alias;
70
+ if (options.parent)
71
+ body.parentAssetId = options.parent;
72
+ if (options.context)
73
+ body.creatorContext = options.context;
74
+ if (options.refs)
75
+ body.inputReferences = options.refs.split(',').map((r) => r.trim());
76
+ const { data } = await client.post('/v0/assets', body);
77
+ const url = data.data.url || `https://tokenrip.com/s/${data.data.id}`;
78
+ outputSuccess({ id: data.data.id, url, title: data.data.title, type: data.data.type }, formatAssetCreated);
79
+ return;
80
+ }
12
81
  const absPath = path.resolve(filePath);
13
82
  if (!fs.existsSync(absPath)) {
14
83
  throw new CliError('FILE_NOT_FOUND', `File not found: ${absPath}`);
@@ -26,6 +95,8 @@ export async function publish(filePath, options) {
26
95
  content,
27
96
  title,
28
97
  };
98
+ if (options.alias)
99
+ body.alias = options.alias;
29
100
  if (options.parent)
30
101
  body.parentAssetId = options.parent;
31
102
  if (options.context)
@@ -1 +1 @@
1
- {"version":3,"file":"publish.js","sourceRoot":"","sources":["../../src/commands/publish.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC7C,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAEtD,MAAM,WAAW,GAAG,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAU,CAAC;AAGnF,MAAM,CAAC,KAAK,UAAU,OAAO,CAC3B,QAAgB,EAChB,OAA6G;IAE7G,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAmB,CAAC,EAAE,CAAC;QACvD,MAAM,IAAI,QAAQ,CAAC,cAAc,EAAE,wBAAwB,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACvF,CAAC;IAED,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IACvC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;QAC5B,MAAM,IAAI,QAAQ,CAAC,gBAAgB,EAAE,mBAAmB,OAAO,EAAE,CAAC,CAAC;IACrE,CAAC;IAED,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;IACtD,MAAM,IAAI,GAAG,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC;IAEvC,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;QACnB,aAAa,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,eAAe,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,kBAAkB,CAAC,CAAC;QAC7H,OAAO;IACT,CAAC;IAED,MAAM,EAAE,MAAM,EAAE,GAAG,iBAAiB,EAAE,CAAC;IACvC,MAAM,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAElD,MAAM,IAAI,GAA4B;QACpC,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,OAAO;QACP,KAAK;KACN,CAAC;IACF,IAAI,OAAO,CAAC,MAAM;QAAE,IAAI,CAAC,aAAa,GAAG,OAAO,CAAC,MAAM,CAAC;IACxD,IAAI,OAAO,CAAC,OAAO;QAAE,IAAI,CAAC,cAAc,GAAG,OAAO,CAAC,OAAO,CAAC;IAC3D,IAAI,OAAO,CAAC,IAAI;QAAE,IAAI,CAAC,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;IAEtF,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC;IAEvD,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,0BAA0B,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC;IACtE,aAAa,CAAC;QACZ,EAAE,EAAE,IAAI,CAAC,IAAI,CAAC,EAAE;QAChB,GAAG;QACH,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,KAAK;QACtB,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI;KACrB,EAAE,kBAAkB,CAAC,CAAC;AACzB,CAAC"}
1
+ {"version":3,"file":"publish.js","sourceRoot":"","sources":["../../src/commands/publish.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC7C,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAEtD,MAAM,WAAW,GAAG,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,KAAK,CAAU,CAAC;AAGxG,MAAM,CAAC,KAAK,UAAU,OAAO,CAC3B,QAAgB,EAChB,OAWC;IAED,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAmB,CAAC,EAAE,CAAC;QACvD,MAAM,IAAI,QAAQ,CAAC,cAAc,EAAE,wBAAwB,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACvF,CAAC;IAED,wFAAwF;IACxF,IAAI,OAAO,CAAC,IAAI,KAAK,YAAY,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;QACrD,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QACvC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;YAC5B,MAAM,IAAI,QAAQ,CAAC,gBAAgB,EAAE,mBAAmB,OAAO,EAAE,CAAC,CAAC;QACrE,CAAC;QACD,MAAM,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QAClD,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;QAE7E,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;YACnB,aAAa,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,kCAAkC,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,kBAAkB,CAAC,CAAC;YACzI,OAAO;QACT,CAAC;QAED,MAAM,IAAI,GAA4B;YACpC,IAAI,EAAE,YAAY;YAClB,QAAQ,EAAE,IAAI;YACd,OAAO;YACP,KAAK;SACN,CAAC;QACF,IAAI,OAAO,CAAC,OAAO;YAAE,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;QACzC,IAAI,OAAO,CAAC,MAAM;YAAE,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QAC7D,IAAI,OAAO,CAAC,KAAK;YAAE,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;QAC9C,IAAI,OAAO,CAAC,MAAM;YAAE,IAAI,CAAC,aAAa,GAAG,OAAO,CAAC,MAAM,CAAC;QACxD,IAAI,OAAO,CAAC,OAAO;YAAE,IAAI,CAAC,cAAc,GAAG,OAAO,CAAC,OAAO,CAAC;QAC3D,IAAI,OAAO,CAAC,IAAI;YAAE,IAAI,CAAC,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;QAEtF,MAAM,EAAE,MAAM,EAAE,GAAG,iBAAiB,EAAE,CAAC;QACvC,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC;QACvD,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,0BAA0B,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC;QACtE,aAAa,CAAC,EAAE,EAAE,EAAE,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,kBAAkB,CAAC,CAAC;QAC3G,OAAO;IACT,CAAC;IAED,8BAA8B;IAC9B,IAAI,OAAO,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;QAClC,IAAI,MAAe,CAAC;QACpB,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;YACnB,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QACtC,CAAC;aAAM,CAAC;YACN,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;YACvC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;gBAC5B,MAAM,IAAI,QAAQ,CAAC,gBAAgB,EAAE,mBAAmB,OAAO,EAAE,CAAC,CAAC;YACrE,CAAC;YACD,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;QACzD,CAAC;QAED,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,qBAAqB,CAAC;QAErD,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;YACnB,aAAa,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,yBAAyB,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,kBAAkB,CAAC,CAAC;YACtG,OAAO;QACT,CAAC;QAED,MAAM,EAAE,MAAM,EAAE,GAAG,iBAAiB,EAAE,CAAC;QACvC,MAAM,IAAI,GAA4B,EAAE,IAAI,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC;QAC5E,IAAI,OAAO,CAAC,KAAK;YAAE,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;QAC9C,IAAI,OAAO,CAAC,MAAM;YAAE,IAAI,CAAC,aAAa,GAAG,OAAO,CAAC,MAAM,CAAC;QACxD,IAAI,OAAO,CAAC,OAAO;YAAE,IAAI,CAAC,cAAc,GAAG,OAAO,CAAC,OAAO,CAAC;QAC3D,IAAI,OAAO,CAAC,IAAI;YAAE,IAAI,CAAC,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;QAEtF,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC;QACvD,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,0BAA0B,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC;QACtE,aAAa,CAAC,EAAE,EAAE,EAAE,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,kBAAkB,CAAC,CAAC;QAC3G,OAAO;IACT,CAAC;IAED,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IACvC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;QAC5B,MAAM,IAAI,QAAQ,CAAC,gBAAgB,EAAE,mBAAmB,OAAO,EAAE,CAAC,CAAC;IACrE,CAAC;IAED,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;IACtD,MAAM,IAAI,GAAG,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC;IAEvC,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;QACnB,aAAa,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,eAAe,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,kBAAkB,CAAC,CAAC;QAC7H,OAAO;IACT,CAAC;IAED,MAAM,EAAE,MAAM,EAAE,GAAG,iBAAiB,EAAE,CAAC;IACvC,MAAM,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAElD,MAAM,IAAI,GAA4B;QACpC,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,OAAO;QACP,KAAK;KACN,CAAC;IACF,IAAI,OAAO,CAAC,KAAK;QAAE,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;IAC9C,IAAI,OAAO,CAAC,MAAM;QAAE,IAAI,CAAC,aAAa,GAAG,OAAO,CAAC,MAAM,CAAC;IACxD,IAAI,OAAO,CAAC,OAAO;QAAE,IAAI,CAAC,cAAc,GAAG,OAAO,CAAC,OAAO,CAAC;IAC3D,IAAI,OAAO,CAAC,IAAI;QAAE,IAAI,CAAC,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;IAEtF,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC;IAEvD,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,0BAA0B,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC;IACtE,aAAa,CAAC;QACZ,EAAE,EAAE,IAAI,CAAC,IAAI,CAAC,EAAE;QAChB,GAAG;QACH,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,KAAK;QACtB,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI;KACrB,EAAE,kBAAkB,CAAC,CAAC;AACzB,CAAC"}
@@ -0,0 +1,12 @@
1
+ export declare function search(query: string, options: {
2
+ type?: string;
3
+ since?: string;
4
+ limit?: string;
5
+ offset?: string;
6
+ state?: string;
7
+ intent?: string;
8
+ ref?: string;
9
+ assetType?: string;
10
+ archived?: boolean;
11
+ includeArchived?: boolean;
12
+ }): Promise<void>;
@@ -0,0 +1,30 @@
1
+ import { requireAuthClient } from '../auth-client.js';
2
+ import { outputSuccess } from '../output.js';
3
+ import { formatSearchResults } from '../formatters.js';
4
+ export async function search(query, options) {
5
+ const { client } = requireAuthClient();
6
+ const params = { q: query };
7
+ if (options.type)
8
+ params.type = options.type;
9
+ if (options.since)
10
+ params.since = options.since;
11
+ if (options.limit)
12
+ params.limit = options.limit;
13
+ if (options.offset)
14
+ params.offset = options.offset;
15
+ if (options.state)
16
+ params.state = options.state;
17
+ if (options.intent)
18
+ params.intent = options.intent;
19
+ if (options.ref)
20
+ params.ref = options.ref;
21
+ if (options.assetType)
22
+ params.asset_type = options.assetType;
23
+ if (options.archived)
24
+ params.archived = 'true';
25
+ if (options.includeArchived)
26
+ params.include_archived = 'true';
27
+ const { data } = await client.get('/v0/search', { params });
28
+ outputSuccess(data.data, formatSearchResults);
29
+ }
30
+ //# sourceMappingURL=search.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"search.js","sourceRoot":"","sources":["../../src/commands/search.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC7C,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAEvD,MAAM,CAAC,KAAK,UAAU,MAAM,CAC1B,KAAa,EACb,OAWC;IAED,MAAM,EAAE,MAAM,EAAE,GAAG,iBAAiB,EAAE,CAAC;IACvC,MAAM,MAAM,GAA2B,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC;IACpD,IAAI,OAAO,CAAC,IAAI;QAAE,MAAM,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAC7C,IAAI,OAAO,CAAC,KAAK;QAAE,MAAM,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;IAChD,IAAI,OAAO,CAAC,KAAK;QAAE,MAAM,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;IAChD,IAAI,OAAO,CAAC,MAAM;QAAE,MAAM,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IACnD,IAAI,OAAO,CAAC,KAAK;QAAE,MAAM,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;IAChD,IAAI,OAAO,CAAC,MAAM;QAAE,MAAM,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IACnD,IAAI,OAAO,CAAC,GAAG;QAAE,MAAM,CAAC,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC;IAC1C,IAAI,OAAO,CAAC,SAAS;QAAE,MAAM,CAAC,UAAU,GAAG,OAAO,CAAC,SAAS,CAAC;IAC7D,IAAI,OAAO,CAAC,QAAQ;QAAE,MAAM,CAAC,QAAQ,GAAG,MAAM,CAAC;IAC/C,IAAI,OAAO,CAAC,eAAe;QAAE,MAAM,CAAC,gBAAgB,GAAG,MAAM,CAAC;IAE9D,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,MAAM,CAAC,GAAG,CAAC,YAAY,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;IAC5D,aAAa,CAAC,IAAI,CAAC,IAAI,EAAE,mBAAmB,CAAC,CAAC;AAChD,CAAC"}
@@ -16,7 +16,7 @@ export function parseDuration(s) {
16
16
  export async function share(assetId, options) {
17
17
  const identity = loadIdentity();
18
18
  if (!identity) {
19
- throw new CliError('NO_IDENTITY', 'No agent identity found. Run `tokenrip auth register` first.');
19
+ throw new CliError('NO_IDENTITY', 'No agent identity found. Run `rip auth register` first.');
20
20
  }
21
21
  const perm = options.commentOnly ? ['comment'] : ['comment', 'version:create'];
22
22
  const exp = options.expires ? parseDuration(options.expires) : undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"share.js","sourceRoot":"","sources":["../../src/commands/share.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,qBAAqB,EAAE,MAAM,cAAc,CAAC;AACrD,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC7C,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAEnD,MAAM,UAAU,aAAa,CAAC,CAAS;IACrC,MAAM,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC;IAC1C,IAAI,CAAC,KAAK;QAAE,MAAM,IAAI,QAAQ,CAAC,kBAAkB,EAAE,qBAAqB,CAAC,wBAAwB,CAAC,CAAC;IACnG,MAAM,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IACjC,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;IACtB,MAAM,WAAW,GAA2B,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC;IAC/E,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC;AAC/D,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,KAAK,CACzB,OAAe,EACf,OAAkE;IAElE,MAAM,QAAQ,GAAG,YAAY,EAAE,CAAC;IAChC,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,MAAM,IAAI,QAAQ,CAAC,aAAa,EAAE,8DAA8D,CAAC,CAAC;IACpG,CAAC;IAED,MAAM,IAAI,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,gBAAgB,CAAC,CAAC;IAC/E,MAAM,GAAG,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,aAAa,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IACzE,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,IAAI,SAAS,CAAC;IAErC,MAAM,KAAK,GAAG,qBAAqB,CACjC,EAAE,GAAG,EAAE,SAAS,OAAO,EAAE,EAAE,GAAG,EAAE,QAAQ,CAAC,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,EAClE,QAAQ,CAAC,SAAS,CACnB,CAAC;IAEF,MAAM,WAAW,GAAG,cAAc,EAAE,CAAC;IACrC,MAAM,GAAG,GAAG,GAAG,WAAW,MAAM,OAAO,QAAQ,kBAAkB,CAAC,KAAK,CAAC,EAAE,CAAC;IAE3E,aAAa,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,IAAI,IAAI,EAAE,GAAG,EAAE,GAAG,IAAI,IAAI,EAAE,EAAE,eAAe,CAAC,CAAC;AACpG,CAAC"}
1
+ {"version":3,"file":"share.js","sourceRoot":"","sources":["../../src/commands/share.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,qBAAqB,EAAE,MAAM,cAAc,CAAC;AACrD,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC7C,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAEnD,MAAM,UAAU,aAAa,CAAC,CAAS;IACrC,MAAM,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC;IAC1C,IAAI,CAAC,KAAK;QAAE,MAAM,IAAI,QAAQ,CAAC,kBAAkB,EAAE,qBAAqB,CAAC,wBAAwB,CAAC,CAAC;IACnG,MAAM,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IACjC,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;IACtB,MAAM,WAAW,GAA2B,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC;IAC/E,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC;AAC/D,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,KAAK,CACzB,OAAe,EACf,OAAkE;IAElE,MAAM,QAAQ,GAAG,YAAY,EAAE,CAAC;IAChC,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,MAAM,IAAI,QAAQ,CAAC,aAAa,EAAE,yDAAyD,CAAC,CAAC;IAC/F,CAAC;IAED,MAAM,IAAI,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,gBAAgB,CAAC,CAAC;IAC/E,MAAM,GAAG,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,aAAa,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IACzE,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,IAAI,SAAS,CAAC;IAErC,MAAM,KAAK,GAAG,qBAAqB,CACjC,EAAE,GAAG,EAAE,SAAS,OAAO,EAAE,EAAE,GAAG,EAAE,QAAQ,CAAC,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,EAClE,QAAQ,CAAC,SAAS,CACnB,CAAC;IAEF,MAAM,WAAW,GAAG,cAAc,EAAE,CAAC;IACrC,MAAM,GAAG,GAAG,GAAG,WAAW,MAAM,OAAO,QAAQ,kBAAkB,CAAC,KAAK,CAAC,EAAE,CAAC;IAE3E,aAAa,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,IAAI,IAAI,EAAE,GAAG,EAAE,GAAG,IAAI,IAAI,EAAE,EAAE,eAAe,CAAC,CAAC;AACpG,CAAC"}
@@ -2,4 +2,6 @@ export declare function status(options: {
2
2
  since?: string;
3
3
  limit?: string;
4
4
  type?: string;
5
+ archived?: boolean;
6
+ includeArchived?: boolean;
5
7
  }): Promise<void>;
@@ -10,6 +10,10 @@ export async function status(options) {
10
10
  params.limit = options.limit;
11
11
  if (options.type)
12
12
  params.type = options.type;
13
+ if (options.archived)
14
+ params.archived = 'true';
15
+ if (options.includeArchived)
16
+ params.include_archived = 'true';
13
17
  const { data } = await client.get('/v0/assets/status', { params });
14
18
  outputSuccess(data.data, formatAssetList);
15
19
  }
@@ -1 +1 @@
1
- {"version":3,"file":"status.js","sourceRoot":"","sources":["../../src/commands/status.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC7C,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAEnD,MAAM,CAAC,KAAK,UAAU,MAAM,CAAC,OAA0D;IACrF,MAAM,EAAE,MAAM,EAAE,GAAG,iBAAiB,EAAE,CAAC;IAEvC,MAAM,MAAM,GAA2B,EAAE,CAAC;IAC1C,IAAI,OAAO,CAAC,KAAK;QAAE,MAAM,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;IAChD,IAAI,OAAO,CAAC,KAAK;QAAE,MAAM,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;IAChD,IAAI,OAAO,CAAC,IAAI;QAAE,MAAM,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAE7C,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,MAAM,CAAC,GAAG,CAAC,mBAAmB,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;IAEnE,aAAa,CAAC,IAAI,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC;AAC5C,CAAC"}
1
+ {"version":3,"file":"status.js","sourceRoot":"","sources":["../../src/commands/status.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC7C,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAEnD,MAAM,CAAC,KAAK,UAAU,MAAM,CAAC,OAAyG;IACpI,MAAM,EAAE,MAAM,EAAE,GAAG,iBAAiB,EAAE,CAAC;IAEvC,MAAM,MAAM,GAA2B,EAAE,CAAC;IAC1C,IAAI,OAAO,CAAC,KAAK;QAAE,MAAM,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;IAChD,IAAI,OAAO,CAAC,KAAK;QAAE,MAAM,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;IAChD,IAAI,OAAO,CAAC,IAAI;QAAE,MAAM,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAC7C,IAAI,OAAO,CAAC,QAAQ;QAAE,MAAM,CAAC,QAAQ,GAAG,MAAM,CAAC;IAC/C,IAAI,OAAO,CAAC,eAAe;QAAE,MAAM,CAAC,gBAAgB,GAAG,MAAM,CAAC;IAE9D,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,MAAM,CAAC,GAAG,CAAC,mBAAmB,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;IAEnE,aAAa,CAAC,IAAI,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC;AAC5C,CAAC"}
@@ -1,6 +1,11 @@
1
+ export declare function threadList(options: {
2
+ state?: string;
3
+ limit?: string;
4
+ }): Promise<void>;
1
5
  export declare function threadCreate(options: {
2
6
  participants?: string;
3
7
  message?: string;
8
+ refs?: string;
4
9
  }): Promise<void>;
5
10
  export declare function threadShare(threadId: string, options: {
6
11
  expires?: string;
@@ -11,3 +16,5 @@ export declare function threadClose(threadId: string, options: {
11
16
  resolution?: string;
12
17
  }): Promise<void>;
13
18
  export declare function threadAddParticipant(threadId: string, agent: string): Promise<void>;
19
+ export declare function threadAddRefs(threadId: string, refs: string): Promise<void>;
20
+ export declare function threadRemoveRef(threadId: string, refId: string): Promise<void>;
@@ -4,15 +4,31 @@ import { createCapabilityToken } from '../crypto.js';
4
4
  import { getFrontendUrl } from '../config.js';
5
5
  import { CliError } from '../errors.js';
6
6
  import { outputSuccess } from '../output.js';
7
- import { formatThreadCreated, formatShareLink, formatThreadDetails, formatThreadClosed, formatParticipantAdded } from '../formatters.js';
7
+ import { formatThreadCreated, formatThreadList, formatShareLink, formatThreadDetails, formatThreadClosed, formatParticipantAdded, formatRefsAdded, formatRefRemoved } from '../formatters.js';
8
8
  import { resolveRecipient, resolveRecipients } from '../contacts.js';
9
9
  import { parseDuration } from './share.js';
10
+ export async function threadList(options) {
11
+ const { client } = requireAuthClient();
12
+ const params = {};
13
+ if (options.state)
14
+ params.state = options.state;
15
+ if (options.limit)
16
+ params.limit = options.limit;
17
+ const { data } = await client.get('/v0/threads', { params });
18
+ outputSuccess(data.data, formatThreadList);
19
+ }
10
20
  export async function threadCreate(options) {
11
21
  const { client } = requireAuthClient();
12
22
  const payload = {};
13
23
  if (options.participants) {
14
24
  payload.participants = resolveRecipients(options.participants.split(',').map((p) => p.trim()));
15
25
  }
26
+ if (options.refs) {
27
+ payload.refs = options.refs.split(',').map((r) => {
28
+ const v = r.trim();
29
+ return { type: 'url', target_id: v };
30
+ });
31
+ }
16
32
  if (options.message) {
17
33
  payload.message = { body: options.message };
18
34
  }
@@ -22,7 +38,7 @@ export async function threadCreate(options) {
22
38
  export async function threadShare(threadId, options) {
23
39
  const identity = loadIdentity();
24
40
  if (!identity) {
25
- throw new CliError('NO_IDENTITY', 'No agent identity found. Run `tokenrip auth register` first.');
41
+ throw new CliError('NO_IDENTITY', 'No agent identity found. Run `rip auth register` first.');
26
42
  }
27
43
  const perm = ['comment'];
28
44
  const exp = options.expires ? parseDuration(options.expires) : undefined;
@@ -51,4 +67,18 @@ export async function threadAddParticipant(threadId, agent) {
51
67
  const { data } = await client.post(`/v0/threads/${threadId}/participants`, { agent_id: agentId });
52
68
  outputSuccess(data.data, formatParticipantAdded);
53
69
  }
70
+ export async function threadAddRefs(threadId, refs) {
71
+ const { client } = requireAuthClient();
72
+ const refList = refs.split(',').map((r) => {
73
+ const v = r.trim();
74
+ return { type: 'url', target_id: v };
75
+ });
76
+ const { data } = await client.post(`/v0/threads/${threadId}/refs`, { refs: refList });
77
+ outputSuccess(data.data, formatRefsAdded);
78
+ }
79
+ export async function threadRemoveRef(threadId, refId) {
80
+ const { client } = requireAuthClient();
81
+ await client.delete(`/v0/threads/${threadId}/refs/${refId}`);
82
+ outputSuccess({ thread_id: threadId, ref_id: refId }, formatRefRemoved);
83
+ }
54
84
  //# sourceMappingURL=thread.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"thread.js","sourceRoot":"","sources":["../../src/commands/thread.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"thread.js","sourceRoot":"","sources":["../../src/commands/thread.ts"],"names":[],"mappings":"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"}
package/dist/config.d.ts CHANGED
@@ -1,5 +1,6 @@
1
1
  export declare const CONFIG_DIR: string;
2
2
  export interface TokenripConfig {
3
+ configVersion?: number;
3
4
  apiKey?: string;
4
5
  apiUrl?: string;
5
6
  preferences: Record<string, unknown>;
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,MAAM,SAAS,CAAC;AAEzB,MAAM,CAAC,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC,mBAAmB,IAAI,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC;AAC5G,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,aAAa,CAAC,CAAC;AAQzD,SAAS,aAAa;IACpB,OAAO,EAAE,WAAW,EAAE,EAAE,EAAE,CAAC;AAC7B,CAAC;AAED,MAAM,UAAU,UAAU;IACxB,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,EAAE,CAAC,YAAY,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;QAClD,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAmB,CAAC;IAC3C,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,aAAa,EAAE,CAAC;IACzB,CAAC;AACH,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,MAAsB;IAC/C,EAAE,CAAC,SAAS,CAAC,UAAU,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC9C,EAAE,CAAC,aAAa,CAAC,WAAW,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;AAC1E,CAAC;AAED,MAAM,UAAU,SAAS,CAAC,MAAsB;IAC9C,OAAO,OAAO,CAAC,GAAG,CAAC,gBAAgB,IAAI,MAAM,CAAC,MAAM,IAAI,0BAA0B,CAAC;AACrF,CAAC;AAED,MAAM,UAAU,SAAS,CAAC,MAAsB;IAC9C,OAAO,OAAO,CAAC,GAAG,CAAC,gBAAgB,IAAI,MAAM,CAAC,MAAM,CAAC;AACvD,CAAC;AAED,MAAM,UAAU,cAAc;IAC5B,OAAO,OAAO,CAAC,GAAG,CAAC,qBAAqB,IAAI,sBAAsB,CAAC;AACrE,CAAC"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,MAAM,SAAS,CAAC;AAEzB,MAAM,CAAC,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC,mBAAmB,IAAI,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC;AAC5G,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,aAAa,CAAC,CAAC;AASzD,SAAS,aAAa;IACpB,OAAO,EAAE,WAAW,EAAE,EAAE,EAAE,CAAC;AAC7B,CAAC;AAED,MAAM,UAAU,UAAU;IACxB,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,EAAE,CAAC,YAAY,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;QAClD,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAmB,CAAC;IAC3C,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,aAAa,EAAE,CAAC;IACzB,CAAC;AACH,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,MAAsB;IAC/C,EAAE,CAAC,SAAS,CAAC,UAAU,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC9C,EAAE,CAAC,aAAa,CAAC,WAAW,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;AAC1E,CAAC;AAED,MAAM,UAAU,SAAS,CAAC,MAAsB;IAC9C,OAAO,OAAO,CAAC,GAAG,CAAC,gBAAgB,IAAI,MAAM,CAAC,MAAM,IAAI,0BAA0B,CAAC;AACrF,CAAC;AAED,MAAM,UAAU,SAAS,CAAC,MAAsB;IAC9C,OAAO,OAAO,CAAC,GAAG,CAAC,gBAAgB,IAAI,MAAM,CAAC,MAAM,CAAC;AACvD,CAAC;AAED,MAAM,UAAU,cAAc;IAC5B,OAAO,OAAO,CAAC,GAAG,CAAC,qBAAqB,IAAI,sBAAsB,CAAC;AACrE,CAAC"}
package/dist/contacts.js CHANGED
@@ -17,8 +17,8 @@ export function saveContacts(contacts) {
17
17
  fs.writeFileSync(CONTACTS_FILE, JSON.stringify(contacts, null, 2), 'utf-8');
18
18
  }
19
19
  export function addContact(name, agentId, meta) {
20
- if (!agentId.startsWith('trip1')) {
21
- throw new CliError('INVALID_AGENT_ID', 'Agent ID must start with trip1');
20
+ if (!agentId.startsWith('rip1')) {
21
+ throw new CliError('INVALID_AGENT_ID', 'Agent ID must start with rip1');
22
22
  }
23
23
  const contacts = loadContacts();
24
24
  contacts[name] = { agent_id: agentId, ...meta };
@@ -33,7 +33,7 @@ export function removeContact(name) {
33
33
  saveContacts(contacts);
34
34
  }
35
35
  export function resolveRecipient(value) {
36
- if (value.startsWith('trip1'))
36
+ if (value.startsWith('rip1'))
37
37
  return value;
38
38
  const contacts = loadContacts();
39
39
  if (contacts[value])
@@ -43,7 +43,7 @@ export function resolveRecipient(value) {
43
43
  export function resolveRecipients(values) {
44
44
  const contacts = loadContacts();
45
45
  return values.map((v) => {
46
- if (v.startsWith('trip1'))
46
+ if (v.startsWith('rip1'))
47
47
  return v;
48
48
  if (contacts[v])
49
49
  return contacts[v].agent_id;
@@ -79,8 +79,8 @@ export async function syncFromServer(client) {
79
79
  return contacts;
80
80
  }
81
81
  export async function addContactWithSync(client, name, agentId, meta) {
82
- if (!agentId.startsWith('trip1')) {
83
- throw new CliError('INVALID_AGENT_ID', 'Agent ID must start with trip1');
82
+ if (!agentId.startsWith('rip1')) {
83
+ throw new CliError('INVALID_AGENT_ID', 'Agent ID must start with rip1');
84
84
  }
85
85
  const contacts = loadContacts();
86
86
  contacts[name] = { agent_id: agentId, ...meta };
@@ -1 +1 @@
1
- {"version":3,"file":"contacts.js","sourceRoot":"","sources":["../src/contacts.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"contacts.js","sourceRoot":"","sources":["../src/contacts.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAEvC,MAAM,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,eAAe,CAAC,CAAC;AAY7D,MAAM,UAAU,YAAY;IAC1B,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,EAAE,CAAC,YAAY,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;QACpD,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAa,CAAC;IACrC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAC;IACZ,CAAC;AACH,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,QAAkB;IAC7C,EAAE,CAAC,SAAS,CAAC,UAAU,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC9C,EAAE,CAAC,aAAa,CAAC,aAAa,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;AAC9E,CAAC;AAED,MAAM,UAAU,UAAU,CACxB,IAAY,EACZ,OAAe,EACf,IAAyC;IAEzC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;QAChC,MAAM,IAAI,QAAQ,CAAC,kBAAkB,EAAE,+BAA+B,CAAC,CAAC;IAC1E,CAAC;IACD,MAAM,QAAQ,GAAG,YAAY,EAAE,CAAC;IAChC,QAAQ,CAAC,IAAI,CAAC,GAAG,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,IAAI,EAAE,CAAC;IAChD,YAAY,CAAC,QAAQ,CAAC,CAAC;AACzB,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,IAAY;IACxC,MAAM,QAAQ,GAAG,YAAY,EAAE,CAAC;IAChC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;QACpB,MAAM,IAAI,QAAQ,CAAC,mBAAmB,EAAE,YAAY,IAAI,aAAa,CAAC,CAAC;IACzE,CAAC;IACD,OAAO,QAAQ,CAAC,IAAI,CAAC,CAAC;IACtB,YAAY,CAAC,QAAQ,CAAC,CAAC;AACzB,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,KAAa;IAC5C,IAAI,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC;QAAE,OAAO,KAAK,CAAC;IAC3C,MAAM,QAAQ,GAAG,YAAY,EAAE,CAAC;IAChC,IAAI,QAAQ,CAAC,KAAK,CAAC;QAAE,OAAO,QAAQ,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC;IACrD,OAAO,KAAK,CAAC,CAAC,8CAA8C;AAC9D,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,MAAgB;IAChD,MAAM,QAAQ,GAAG,YAAY,EAAE,CAAC;IAChC,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;QACtB,IAAI,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC;YAAE,OAAO,CAAC,CAAC;QACnC,IAAI,QAAQ,CAAC,CAAC,CAAC;YAAE,OAAO,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;QAC7C,OAAO,CAAC,CAAC;IACX,CAAC,CAAC,CAAC;AACL,CAAC;AAYD,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,MAAqB;IACxD,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;IAC7C,MAAM,cAAc,GAAoB,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC;IAEtD,MAAM,QAAQ,GAAG,YAAY,EAAE,CAAC;IAEhC,mFAAmF;IACnF,KAAK,MAAM,EAAE,IAAI,cAAc,EAAE,CAAC;QAChC,MAAM,IAAI,GAAG,EAAE,CAAC,KAAK,IAAI,EAAE,CAAC,KAAK,IAAI,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QAC7D,wCAAwC;QACxC,MAAM,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,KAAK,EAAE,CAAC,OAAO,CAAC,CAAC;QAC3F,IAAI,WAAW,EAAE,CAAC;YAChB,0BAA0B;YAC1B,QAAQ,CAAC,WAAW,CAAC,CAAC,SAAS,GAAG,EAAE,CAAC,EAAE,CAAC;YACxC,IAAI,EAAE,CAAC,KAAK;gBAAE,QAAQ,CAAC,WAAW,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC,KAAK,CAAC;QACvD,CAAC;aAAM,CAAC;YACN,8BAA8B;YAC9B,QAAQ,CAAC,IAAI,CAAC,GAAG;gBACf,QAAQ,EAAE,EAAE,CAAC,OAAO;gBACpB,KAAK,EAAE,EAAE,CAAC,KAAK,IAAI,SAAS;gBAC5B,KAAK,EAAE,EAAE,CAAC,KAAK,IAAI,SAAS;gBAC5B,SAAS,EAAE,EAAE,CAAC,EAAE;aACjB,CAAC;QACJ,CAAC;IACH,CAAC;IAED,YAAY,CAAC,QAAQ,CAAC,CAAC;IACvB,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,MAA4B,EAC5B,IAAY,EACZ,OAAe,EACf,IAAyC;IAEzC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;QAChC,MAAM,IAAI,QAAQ,CAAC,kBAAkB,EAAE,+BAA+B,CAAC,CAAC;IAC1E,CAAC;IAED,MAAM,QAAQ,GAAG,YAAY,EAAE,CAAC;IAChC,QAAQ,CAAC,IAAI,CAAC,GAAG,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,IAAI,EAAE,CAAC;IAEhD,IAAI,MAAM,EAAE,CAAC;QACX,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,cAAc,EAAE;gBAC5C,OAAO;gBACP,KAAK,EAAE,IAAI;gBACX,KAAK,EAAE,IAAI,EAAE,KAAK;aACnB,CAAC,CAAC;YACH,QAAQ,CAAC,IAAI,CAAC,CAAC,SAAS,GAAG,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;QAC9C,CAAC;QAAC,MAAM,CAAC;YACP,kDAAkD;QACpD,CAAC;IACH,CAAC;IAED,YAAY,CAAC,QAAQ,CAAC,CAAC;AACzB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,qBAAqB,CACzC,MAA4B,EAC5B,IAAY;IAEZ,MAAM,QAAQ,GAAG,YAAY,EAAE,CAAC;IAChC,MAAM,OAAO,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;IAC/B,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,MAAM,IAAI,QAAQ,CAAC,mBAAmB,EAAE,YAAY,IAAI,aAAa,CAAC,CAAC;IACzE,CAAC;IAED,MAAM,QAAQ,GAAG,OAAO,CAAC,SAAS,CAAC;IACnC,aAAa,CAAC,IAAI,CAAC,CAAC;IAEpB,0BAA0B;IAC1B,IAAI,MAAM,IAAI,QAAQ,EAAE,CAAC;QACvB,IAAI,CAAC;YACH,MAAM,MAAM,CAAC,MAAM,CAAC,gBAAgB,QAAQ,EAAE,CAAC,CAAC;QAClD,CAAC;QAAC,MAAM,CAAC;YACP,qDAAqD;QACvD,CAAC;IACH,CAAC;AACH,CAAC"}
package/dist/crypto.js CHANGED
@@ -1,6 +1,6 @@
1
1
  import { generateKeyPairSync, sign as ed25519Sign, createPrivateKey } from 'node:crypto';
2
2
  import { bech32 } from 'bech32';
3
- const AGENT_HRP = 'trip';
3
+ const AGENT_HRP = 'rip';
4
4
  const BECH32_LIMIT = 90;
5
5
  // ASN.1 DER prefix for Ed25519 PKCS8 private key (prepend to 32-byte raw key)
6
6
  const PKCS8_ED25519_PREFIX = Buffer.from('302e020100300506032b657004220420', 'hex');
@@ -1 +1 @@
1
- {"version":3,"file":"crypto.js","sourceRoot":"","sources":["../src/crypto.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,IAAI,IAAI,WAAW,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AACzF,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,MAAM,SAAS,GAAG,MAAM,CAAC;AACzB,MAAM,YAAY,GAAG,EAAE,CAAC;AAExB,8EAA8E;AAC9E,MAAM,oBAAoB,GAAG,MAAM,CAAC,IAAI,CAAC,kCAAkC,EAAE,KAAK,CAAC,CAAC;AAOpF,MAAM,UAAU,eAAe;IAC7B,MAAM,EAAE,SAAS,EAAE,UAAU,EAAE,GAAG,mBAAmB,CAAC,SAAS,CAAC,CAAC;IACjE,MAAM,MAAM,GAAI,SAAS,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,CAAY,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;IAC1F,MAAM,OAAO,GAAI,UAAU,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,CAAY,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;IAC7F,OAAO;QACL,YAAY,EAAE,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC;QACpC,YAAY,EAAE,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC;KACtC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,YAAoB;IACrD,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,YAAY,EAAE,KAAK,CAAC,CAAC;IAC/C,MAAM,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IACpC,OAAO,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,KAAK,EAAE,YAAY,CAAC,CAAC;AACvD,CAAC;AAUD,MAAM,UAAU,IAAI,CAAC,IAAY,EAAE,YAAoB;IACrD,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,YAAY,EAAE,KAAK,CAAC,CAAC;IAChD,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,oBAAoB,EAAE,MAAM,CAAC,CAAC,CAAC;IAC7D,MAAM,MAAM,GAAG,gBAAgB,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;IAC/E,OAAO,WAAW,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;AACzC,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,OAAgC,EAAE,YAAoB;IAChF,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;IAC9E,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,YAAY,CAAC,CAAC;IAC9D,OAAO,GAAG,UAAU,IAAI,SAAS,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;AAC5D,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,IAA4B,EAAE,YAAoB;IACtF,MAAM,OAAO,GAA4B,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC;IAC3F,IAAI,IAAI,CAAC,GAAG,IAAI,IAAI;QAAE,OAAO,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC;IAC7C,IAAI,IAAI,CAAC,GAAG,IAAI,IAAI;QAAE,OAAO,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC;IAC7C,OAAO,WAAW,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;AAC5C,CAAC"}
1
+ {"version":3,"file":"crypto.js","sourceRoot":"","sources":["../src/crypto.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,IAAI,IAAI,WAAW,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AACzF,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,MAAM,SAAS,GAAG,KAAK,CAAC;AACxB,MAAM,YAAY,GAAG,EAAE,CAAC;AAExB,8EAA8E;AAC9E,MAAM,oBAAoB,GAAG,MAAM,CAAC,IAAI,CAAC,kCAAkC,EAAE,KAAK,CAAC,CAAC;AAOpF,MAAM,UAAU,eAAe;IAC7B,MAAM,EAAE,SAAS,EAAE,UAAU,EAAE,GAAG,mBAAmB,CAAC,SAAS,CAAC,CAAC;IACjE,MAAM,MAAM,GAAI,SAAS,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,CAAY,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;IAC1F,MAAM,OAAO,GAAI,UAAU,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,CAAY,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;IAC7F,OAAO;QACL,YAAY,EAAE,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC;QACpC,YAAY,EAAE,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC;KACtC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,YAAoB;IACrD,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,YAAY,EAAE,KAAK,CAAC,CAAC;IAC/C,MAAM,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IACpC,OAAO,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,KAAK,EAAE,YAAY,CAAC,CAAC;AACvD,CAAC;AAUD,MAAM,UAAU,IAAI,CAAC,IAAY,EAAE,YAAoB;IACrD,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,YAAY,EAAE,KAAK,CAAC,CAAC;IAChD,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,oBAAoB,EAAE,MAAM,CAAC,CAAC,CAAC;IAC7D,MAAM,MAAM,GAAG,gBAAgB,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;IAC/E,OAAO,WAAW,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;AACzC,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,OAAgC,EAAE,YAAoB;IAChF,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;IAC9E,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,YAAY,CAAC,CAAC;IAC9D,OAAO,GAAG,UAAU,IAAI,SAAS,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;AAC5D,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,IAA4B,EAAE,YAAoB;IACtF,MAAM,OAAO,GAA4B,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC;IAC3F,IAAI,IAAI,CAAC,GAAG,IAAI,IAAI;QAAE,OAAO,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC;IAC7C,IAAI,IAAI,CAAC,GAAG,IAAI,IAAI;QAAE,OAAO,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC;IAC7C,OAAO,WAAW,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;AAC5C,CAAC"}
@@ -8,8 +8,12 @@ export declare const formatVersionDeleted: Formatter;
8
8
  export declare const formatConfigSaved: Formatter;
9
9
  export declare const formatAuthKey: Formatter;
10
10
  export declare const formatInbox: Formatter;
11
+ export declare const formatThreadList: Formatter;
11
12
  export declare const formatContacts: Formatter;
12
13
  export declare const formatContactResolved: Formatter;
14
+ export declare const formatContactSaved: Formatter;
15
+ export declare const formatContactRemoved: Formatter;
16
+ export declare const formatConfigShow: Formatter;
13
17
  export declare const formatMessageSent: Formatter;
14
18
  export declare const formatMessages: Formatter;
15
19
  export declare const formatShareLink: Formatter;
@@ -21,4 +25,12 @@ export declare const formatVersionMetadata: Formatter;
21
25
  export declare const formatThreadDetails: Formatter;
22
26
  export declare const formatThreadClosed: Formatter;
23
27
  export declare const formatParticipantAdded: Formatter;
28
+ export declare const formatRefsAdded: Formatter;
29
+ export declare const formatRefRemoved: Formatter;
30
+ export declare const formatWhoami: Formatter;
24
31
  export declare const formatProfileUpdated: Formatter;
32
+ export declare const formatCollectionRows: Formatter;
33
+ export declare const formatRowsAppended: Formatter;
34
+ export declare const formatRowUpdated: Formatter;
35
+ export declare const formatRowsDeleted: Formatter;
36
+ export declare const formatSearchResults: Formatter;
@@ -83,7 +83,7 @@ export const formatInbox = (data) => {
83
83
  const intent = t.last_intent ? ` last: ${t.last_intent}` : '';
84
84
  const preview = t.last_body_preview ? ` "${t.last_body_preview}"` : '';
85
85
  const ago = formatTimeAgo(new Date(t.updated_at));
86
- lines.push(` ${t.thread_id.slice(0, 8)} ${count.padEnd(10)}${intent}${preview} ${ago}`);
86
+ lines.push(` ${t.thread_id} ${count.padEnd(10)}${intent}${preview} ${ago}`);
87
87
  }
88
88
  }
89
89
  else {
@@ -104,24 +104,59 @@ export const formatInbox = (data) => {
104
104
  }
105
105
  return lines.join('\n');
106
106
  };
107
+ export const formatThreadList = (data) => {
108
+ const threads = data.threads ?? [];
109
+ const total = data.total ?? threads.length;
110
+ if (threads.length === 0)
111
+ return 'No threads.';
112
+ const lines = [`${total} thread(s):\n`];
113
+ for (const t of threads) {
114
+ const state = t.state === 'closed' ? '[closed]' : '[open] ';
115
+ const participants = `${t.participant_count} participant${t.participant_count !== 1 ? 's' : ''}`;
116
+ const preview = t.last_message_preview ? `"${t.last_message_preview}"` : '(no messages)';
117
+ const ago = t.updated_at ? formatTimeAgo(new Date(t.updated_at)) : '';
118
+ lines.push(` ${state} ${t.thread_id} ${participants.padEnd(16)} ${preview} ${ago}`);
119
+ }
120
+ return lines.join('\n');
121
+ };
107
122
  export const formatContacts = (data) => {
108
123
  const contacts = data;
109
124
  const entries = Object.entries(contacts);
110
125
  if (entries.length === 0)
111
126
  return 'No contacts.';
112
127
  const lines = [`${entries.length} contact(s):\n`];
113
- lines.push(`${'NAME'.padEnd(16)} ${'AGENT ID'.padEnd(24)} ${'ALIAS'.padEnd(16)} NOTES`);
128
+ lines.push(`${'NAME'.padEnd(16)} ${'AGENT ID'.padEnd(40)} ${'ALIAS'.padEnd(16)} NOTES`);
114
129
  for (const [name, c] of entries) {
115
130
  const alias = c.alias || '—';
116
131
  const notes = c.notes || '';
117
- const idShort = c.agent_id.length > 20 ? c.agent_id.slice(0, 20) + '...' : c.agent_id;
118
- lines.push(`${name.padEnd(16)} ${idShort.padEnd(24)} ${alias.padEnd(16)} ${notes}`);
132
+ lines.push(`${name.padEnd(16)} ${c.agent_id.padEnd(40)} ${alias.padEnd(16)} ${notes}`);
119
133
  }
120
134
  return lines.join('\n');
121
135
  };
122
136
  export const formatContactResolved = (data) => {
123
137
  return `${data.name}: ${data.agent_id}`;
124
138
  };
139
+ export const formatContactSaved = (data) => {
140
+ const lines = [`Contact "${data.name}" saved`];
141
+ if (data.agent_id)
142
+ lines.push(` Agent: ${data.agent_id}`);
143
+ if (data.alias)
144
+ lines.push(` Alias: ${data.alias}`);
145
+ return lines.join('\n');
146
+ };
147
+ export const formatContactRemoved = (data) => {
148
+ return data.message || `Contact "${data.name}" removed`;
149
+ };
150
+ export const formatConfigShow = (data) => {
151
+ const lines = ['Configuration:'];
152
+ if (data.apiUrl)
153
+ lines.push(` API URL: ${data.apiUrl}`);
154
+ if (data.apiKey)
155
+ lines.push(` API Key: ${data.apiKey}`);
156
+ if (data.configFile)
157
+ lines.push(` Config file: ${data.configFile}`);
158
+ return lines.join('\n');
159
+ };
125
160
  export const formatMessageSent = (data) => {
126
161
  const lines = [];
127
162
  if (data.thread_id)
@@ -140,10 +175,10 @@ export const formatMessages = (data) => {
140
175
  return 'No messages.';
141
176
  const lines = [];
142
177
  for (const m of messages) {
143
- const sender = m.sender?.agent_id?.slice(0, 12) || m.sender?.user_id || 'unknown';
178
+ const sender = m.sender?.agent_id || m.sender?.user_id || 'unknown';
144
179
  const intent = m.intent ? ` [${m.intent}]` : '';
145
180
  const ago = formatTimeAgo(new Date(m.created_at));
146
- lines.push(`#${m.sequence} ${sender}... ${ago}${intent}`);
181
+ lines.push(`#${m.sequence} ${sender} ${ago}${intent}`);
147
182
  lines.push(` ${m.body}`);
148
183
  lines.push('');
149
184
  }
@@ -172,6 +207,10 @@ export const formatThreadCreated = (data) => {
172
207
  if (Array.isArray(participants)) {
173
208
  lines.push(` Participants: ${participants.length}`);
174
209
  }
210
+ const refs = data.refs;
211
+ if (Array.isArray(refs) && refs.length > 0) {
212
+ lines.push(` Linked: ${refs.length}`);
213
+ }
175
214
  return lines.join('\n');
176
215
  };
177
216
  export const formatAssetDownloaded = (data) => {
@@ -240,6 +279,13 @@ export const formatThreadDetails = (data) => {
240
279
  lines.push(` - ${id}${role}`);
241
280
  }
242
281
  }
282
+ const refs = data.refs;
283
+ if (Array.isArray(refs) && refs.length > 0) {
284
+ lines.push(` Linked: ${refs.length}`);
285
+ for (const r of refs) {
286
+ lines.push(` - [${r.type}] ${r.target_id}`);
287
+ }
288
+ }
243
289
  if (data.resolution)
244
290
  lines.push(` Resolution: ${JSON.stringify(data.resolution)}`);
245
291
  if (data.created_at)
@@ -262,6 +308,27 @@ export const formatParticipantAdded = (data) => {
262
308
  lines.push(` Agent: ${data.agent_id}`);
263
309
  return lines.join('\n');
264
310
  };
311
+ export const formatRefsAdded = (data) => {
312
+ const refs = data;
313
+ if (!Array.isArray(refs) || refs.length === 0)
314
+ return 'No refs added.';
315
+ const lines = [`Added ${refs.length} ref(s):`];
316
+ for (const r of refs) {
317
+ lines.push(` [${r.type}] ${r.target_id} (${r.id})`);
318
+ }
319
+ return lines.join('\n');
320
+ };
321
+ export const formatRefRemoved = (data) => {
322
+ return `Removed ref ${data.ref_id} from thread ${data.thread_id}`;
323
+ };
324
+ export const formatWhoami = (data) => {
325
+ const lines = [String(data.agent_id)];
326
+ if (data.alias)
327
+ lines.push(` Alias: ${data.alias}`);
328
+ if (data.registered_at)
329
+ lines.push(` Registered: ${data.registered_at}`);
330
+ return lines.join('\n');
331
+ };
265
332
  export const formatProfileUpdated = (data) => {
266
333
  const lines = ['Profile updated'];
267
334
  if (data.agent_id)
@@ -272,6 +339,67 @@ export const formatProfileUpdated = (data) => {
272
339
  lines.push(` Metadata: ${JSON.stringify(data.metadata)}`);
273
340
  return lines.join('\n');
274
341
  };
342
+ export const formatCollectionRows = (data) => {
343
+ const rows = data.rows ?? [];
344
+ const nextCursor = data.nextCursor;
345
+ if (!Array.isArray(rows) || rows.length === 0)
346
+ return 'No rows.';
347
+ const lines = [`${rows.length} row(s):\n`];
348
+ for (const r of rows) {
349
+ const dataStr = JSON.stringify(r.data);
350
+ const ago = formatTimeAgo(new Date(r.createdAt));
351
+ lines.push(` ${r.id} ${ago} ${dataStr}`);
352
+ }
353
+ if (nextCursor)
354
+ lines.push(`\n More rows available. Use --after ${nextCursor}`);
355
+ return lines.join('\n');
356
+ };
357
+ export const formatRowsAppended = (data) => {
358
+ const count = data.count ?? 0;
359
+ const rows = data.rows ?? [];
360
+ const lines = [`Appended ${count} row(s)`];
361
+ for (const r of rows) {
362
+ if (r.id)
363
+ lines.push(` ${r.id}`);
364
+ }
365
+ return lines.join('\n');
366
+ };
367
+ export const formatRowUpdated = (data) => {
368
+ return `Updated row ${data.id}`;
369
+ };
370
+ export const formatRowsDeleted = (data) => {
371
+ return `Deleted ${data.deleted} row(s)`;
372
+ };
373
+ export const formatSearchResults = (data) => {
374
+ const results = data.results ?? [];
375
+ const total = data.total ?? results.length;
376
+ if (results.length === 0)
377
+ return 'No results.';
378
+ const lines = [`${total} result(s):\n`];
379
+ for (const r of results) {
380
+ const title = r.title || '(untitled)';
381
+ const ago = formatTimeAgo(new Date(r.updated_at));
382
+ if (r.type === 'thread') {
383
+ const state = r.thread?.state === 'closed' ? '[closed]' : '[open] ';
384
+ const intent = r.thread?.last_intent ? ` last: ${r.thread.last_intent}` : '';
385
+ const participants = r.thread?.participant_count != null
386
+ ? `${r.thread.participant_count} participant${r.thread.participant_count !== 1 ? 's' : ''}`
387
+ : '';
388
+ lines.push(` thread ${state} ${r.id} ${participants.padEnd(16)}${intent} ${ago}`);
389
+ if (title !== '(untitled)')
390
+ lines.push(` ${title}`);
391
+ }
392
+ else {
393
+ const assetType = (r.asset?.asset_type ?? '').padEnd(10);
394
+ const versions = r.asset?.version_count ? `v${r.asset.version_count}` : '';
395
+ lines.push(` asset ${assetType} ${r.id} ${title} ${versions} ${ago}`);
396
+ }
397
+ }
398
+ if (results.length < total) {
399
+ lines.push(`\n Showing ${results.length} of ${total}. Use --offset ${results.length} for more.`);
400
+ }
401
+ return lines.join('\n');
402
+ };
275
403
  function formatTimeAgo(date) {
276
404
  const seconds = Math.floor((Date.now() - date.getTime()) / 1000);
277
405
  if (seconds < 60)