@impulselab/hepha 0.2.651 → 0.2.653

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/dist/index.js CHANGED
@@ -367,7 +367,7 @@ SESSIONS
367
367
  hepha sessions get <id>
368
368
  hepha sessions logs <id> [--after <sequence>] [--limit N] [--follow]
369
369
  hepha sessions send <id> "<message>"
370
- hepha sessions pause|resume|archive <id>
370
+ hepha sessions pause|resume|trash <id>
371
371
  hepha sessions kill <id> [--reason "\u2026"]
372
372
  hepha sessions checks|pr|verify <id>
373
373
 
@@ -1843,6 +1843,13 @@ var HOST_TOOL_NAMES = {
1843
1843
  AUTOMATION_CATALOG: "automation_catalog",
1844
1844
  CREATE_AUTOMATION: "create_automation",
1845
1845
  UPDATE_AUTOMATION: "update_automation",
1846
+ DECK_LIST: "deck_list",
1847
+ DECK_CREATE: "deck_create",
1848
+ DECK_READ: "deck_read",
1849
+ DECK_WRITE_SLIDE: "deck_write_slide",
1850
+ DECK_MOVE_SLIDE: "deck_move_slide",
1851
+ DECK_DELETE_SLIDE: "deck_delete_slide",
1852
+ DECK_RENDER: "deck_render",
1846
1853
  SUBMIT_SPECS: "submit_specs",
1847
1854
  SET_BRAND_KIT: "set_brand_kit",
1848
1855
  PLAN_TICKETS: "plan_tickets",
@@ -2328,6 +2335,30 @@ var designToolActivityDescribers = [
2328
2335
  ]
2329
2336
  ];
2330
2337
 
2338
+ // ../../packages/agents/src/tool-activity/slides/slides-tool-activity-describers.ts
2339
+ var slidesToolActivityDescribers = [
2340
+ [HOST_TOOL_NAMES.DECK_LIST, () => labelOnly("Listed the decks")],
2341
+ [
2342
+ HOST_TOOL_NAMES.DECK_CREATE,
2343
+ (record) => {
2344
+ const title = toolInput.trimmed(record.title);
2345
+ return labelOnly(
2346
+ title ? `Created the deck \u201C${title}\u201D` : "Created a deck"
2347
+ );
2348
+ }
2349
+ ],
2350
+ [HOST_TOOL_NAMES.DECK_READ, () => labelOnly("Read the deck")],
2351
+ [
2352
+ HOST_TOOL_NAMES.DECK_WRITE_SLIDE,
2353
+ (record) => labelOnly(
2354
+ toolInput.trimmed(record.slideId) ? "Rewrote a slide" : "Added a slide"
2355
+ )
2356
+ ],
2357
+ [HOST_TOOL_NAMES.DECK_MOVE_SLIDE, () => labelOnly("Moved a slide")],
2358
+ [HOST_TOOL_NAMES.DECK_DELETE_SLIDE, () => labelOnly("Deleted a slide")],
2359
+ [HOST_TOOL_NAMES.DECK_RENDER, () => labelOnly("Rendered the deck")]
2360
+ ];
2361
+
2331
2362
  // ../../packages/agents/src/tool-activity/automation/linear-issue-label.ts
2332
2363
  function linearIssueLabel(verb, issue) {
2333
2364
  const id = toolInput.trimmed(issue);
@@ -3119,6 +3150,7 @@ var canonicalToolActivityDescribers = new Map([
3119
3150
  ...integrationToolActivityDescribers,
3120
3151
  ...browserToolActivityDescribers,
3121
3152
  ...designToolActivityDescribers,
3153
+ ...slidesToolActivityDescribers,
3122
3154
  ...automationToolActivityDescribers,
3123
3155
  ...reviewToolActivityDescribers,
3124
3156
  ...factoryToolActivityDescribers,
@@ -3769,7 +3801,7 @@ var ACTIONS4 = [
3769
3801
  "pause",
3770
3802
  "resume",
3771
3803
  "kill",
3772
- "archive",
3804
+ "trash",
3773
3805
  "checks",
3774
3806
  "pr",
3775
3807
  "verify"
@@ -3777,8 +3809,7 @@ var ACTIONS4 = [
3777
3809
  var CONTROL_PATHS = {
3778
3810
  pause: "pause",
3779
3811
  resume: "resume",
3780
- kill: "kill",
3781
- archive: "archive"
3812
+ kill: "kill"
3782
3813
  };
3783
3814
  var STATUS_GROUPS = ["active", "waiting", "done"];
3784
3815
  var SESSION_FIELDS = {
@@ -3922,6 +3953,23 @@ var sessionActions = {
3922
3953
  send: sendSessionMessage
3923
3954
  };
3924
3955
 
3956
+ // src/commands/sessions/trash-session.ts
3957
+ async function trashSession(sessionId, asJson) {
3958
+ const result = expectShape(
3959
+ await api(path`/sessions/${sessionId}`, { method: "DELETE" }),
3960
+ "DELETE /sessions/{id}",
3961
+ {
3962
+ sessionId: (value) => value === sessionId,
3963
+ deletedAt: (value) => value === null || typeof value === "string" && Number.isFinite(Date.parse(value))
3964
+ }
3965
+ );
3966
+ if (asJson) {
3967
+ out.json(result);
3968
+ return;
3969
+ }
3970
+ out.line(`Trashed ${out.safe(result.sessionId)}`);
3971
+ }
3972
+
3925
3973
  // src/commands/detail/detail.ts
3926
3974
  function detail(payload, endpoint) {
3927
3975
  return expectShape(payload, endpoint, SESSION_FIELDS);
@@ -3954,6 +4002,10 @@ async function runSessionOperation(parsed, action, asJson) {
3954
4002
  ...action === "kill" ? { flags: ["reason"] } : {}
3955
4003
  });
3956
4004
  const sessionId = args.required(parsed, 1, "sessionId");
4005
+ if (action === "trash") {
4006
+ await trashSession(sessionId, asJson);
4007
+ return;
4008
+ }
3957
4009
  if (action === "get") {
3958
4010
  const session = detail(
3959
4011
  await api(path`/sessions/${sessionId}`),