@integrity-labs/agt-cli 0.13.0 → 0.14.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/dist/bin/agt.js CHANGED
@@ -32,7 +32,7 @@ import {
32
32
  resolveChannels,
33
33
  serializeManifestForSlackCli,
34
34
  setActiveTeam
35
- } from "../chunk-WNYQKTBP.js";
35
+ } from "../chunk-Y2ZGJIXI.js";
36
36
 
37
37
  // src/bin/agt.ts
38
38
  import { join as join11 } from "path";
@@ -3717,7 +3717,7 @@ import { execFileSync, execSync } from "child_process";
3717
3717
  import { existsSync as existsSync5, realpathSync } from "fs";
3718
3718
  import chalk20 from "chalk";
3719
3719
  import ora15 from "ora";
3720
- var cliVersion = true ? "0.13.0" : "dev";
3720
+ var cliVersion = true ? "0.14.0" : "dev";
3721
3721
  async function fetchLatestVersion() {
3722
3722
  const host2 = getHost();
3723
3723
  if (!host2) return null;
@@ -4166,7 +4166,7 @@ function handleError(err) {
4166
4166
  }
4167
4167
 
4168
4168
  // src/bin/agt.ts
4169
- var cliVersion2 = true ? "0.13.0" : "dev";
4169
+ var cliVersion2 = true ? "0.14.0" : "dev";
4170
4170
  var program = new Command();
4171
4171
  program.name("agt").description("Augmented CLI \u2014 agent provisioning and management").version(cliVersion2).option("--json", "Emit machine-readable JSON output (suppress spinners and colors)").option("--skip-update-check", "Skip the automatic update check on startup");
4172
4172
  program.hook("preAction", (thisCommand) => {
@@ -9,6 +9,8 @@ var EXECUTION_PREAMBLE = [
9
9
  "\u2022 Do not announce what you are about to do. Just do it and produce the output.",
10
10
  '\u2022 The recipient sees ONLY your final text response \u2014 intermediate tool calls, files you wrote, and prior turns do NOT reach them. If the task asks for a brief, report, summary, or any deliverable, put the FULL content verbatim in your final response. Do not reference "above", "attached", or earlier output.',
11
11
  "\u2022 Do not expose internal bookkeeping to the recipient \u2014 memory files, saved paths, kanban status, or meta-notes about how the work was done. Only the deliverable content belongs in your response.",
12
+ "\u2022 Exception: if your output references a specific kanban card (for example, you just completed, updated, or made progress on a tracked item), include the deep-link URL that the kanban tool returned alongside the card name. The link is part of the deliverable \u2014 it lets the user jump straight to the card \u2014 not meta-bookkeeping.",
13
+ '\u2022 Conditional tasks: if the instruction contains a clause like "DO NOT notify me unless X", "only message me if Y", or "skip if nothing to report", and that condition is NOT met for this run, your final response must be EXACTLY `<no-delivery/>` on a single line \u2014 nothing else, no other text, no trailing punctuation, no "Nothing urgent"-style summary. The delivery gateway recognises that literal token and suppresses the send. Writing "Nothing urgent", "No updates", "All quiet", or similar filler messages in place of `<no-delivery/>` will deliver those words to the user and violates the instruction.',
12
14
  "\u2022 Do not over-deliver. Match the scope and length of the request. A yes/no question gets a one-line answer; a brief request gets the brief, not a dissertation. Long rambling messages are not useful \u2014 cut any section, caveat, or restatement that does not directly answer the instruction.",
13
15
  "",
14
16
  "Instruction:"
@@ -3330,6 +3332,7 @@ ${sections}`
3330
3332
  const botToken = config["bot_token"];
3331
3333
  const appToken = config["app_token"];
3332
3334
  const threadAutoFollow = config["thread_auto_follow"];
3335
+ const channelResponseMode = config["channel_response_mode"];
3333
3336
  if (botToken) {
3334
3337
  const localSlackChannel = join4(getHomeDir3(), ".augmented", "_mcp", "slack-channel.js");
3335
3338
  const slackEntry = {
@@ -3339,6 +3342,10 @@ ${sections}`
3339
3342
  SLACK_BOT_TOKEN: botToken,
3340
3343
  ...appToken ? { SLACK_APP_TOKEN: appToken } : {},
3341
3344
  ...threadAutoFollow && threadAutoFollow !== "off" ? { SLACK_THREAD_AUTO_FOLLOW: threadAutoFollow } : {},
3345
+ // ENG-4464: only emit when non-default — `mention_only` is the
3346
+ // default in slack-response-mode.ts, so omitting keeps the env
3347
+ // block tidy for the common case.
3348
+ ...channelResponseMode && channelResponseMode !== "mention_only" ? { SLACK_CHANNEL_RESPONSE_MODE: channelResponseMode } : {},
3342
3349
  // Scopes slack.upload_file uploads to the agent's project dir.
3343
3350
  AGT_AGENT_CODE_NAME: codeName
3344
3351
  }
@@ -3391,6 +3398,8 @@ ${sections}`
3391
3398
  const localSlackChannel = join4(getHomeDir3(), ".augmented", "_mcp", "slack-channel.js");
3392
3399
  const slackThreadAutoFollow = config["thread_auto_follow"];
3393
3400
  const slackAutoFollowEnv = slackThreadAutoFollow && slackThreadAutoFollow !== "off" ? { SLACK_THREAD_AUTO_FOLLOW: slackThreadAutoFollow } : {};
3401
+ const slackChannelResponseMode = config["channel_response_mode"];
3402
+ const slackResponseModeEnv = slackChannelResponseMode && slackChannelResponseMode !== "mention_only" ? { SLACK_CHANNEL_RESPONSE_MODE: slackChannelResponseMode } : {};
3394
3403
  if (isPersistent && existsSync4(localSlackChannel)) {
3395
3404
  mcpServers["slack"] = {
3396
3405
  command: "node",
@@ -3398,7 +3407,8 @@ ${sections}`
3398
3407
  env: {
3399
3408
  SLACK_BOT_TOKEN: botToken,
3400
3409
  ...appToken ? { SLACK_APP_TOKEN: appToken } : {},
3401
- ...slackAutoFollowEnv
3410
+ ...slackAutoFollowEnv,
3411
+ ...slackResponseModeEnv
3402
3412
  }
3403
3413
  };
3404
3414
  } else {
@@ -3408,7 +3418,8 @@ ${sections}`
3408
3418
  env: {
3409
3419
  SLACK_BOT_TOKEN: botToken,
3410
3420
  ...appToken ? { SLACK_APP_TOKEN: appToken } : {},
3411
- ...slackAutoFollowEnv
3421
+ ...slackAutoFollowEnv,
3422
+ ...slackResponseModeEnv
3412
3423
  }
3413
3424
  };
3414
3425
  }
@@ -4780,6 +4791,17 @@ function validateHeadings(body, requiredHeadings = REQUIRED_CHARTER_HEADINGS) {
4780
4791
  return requiredHeadings.filter((h) => !found.has(h));
4781
4792
  }
4782
4793
 
4794
+ // ../../packages/core/dist/scheduled-tasks/suppress.js
4795
+ var SUPPRESS_SENTINEL = "<no-delivery/>";
4796
+ function isSuppressOutput(output) {
4797
+ if (output == null)
4798
+ return true;
4799
+ const trimmed = output.trim();
4800
+ if (trimmed.length === 0)
4801
+ return true;
4802
+ return trimmed === SUPPRESS_SENTINEL;
4803
+ }
4804
+
4783
4805
  // ../../packages/core/dist/schemas/validators.js
4784
4806
  import Ajv2020 from "ajv/dist/2020.js";
4785
4807
  import addFormats from "ajv-formats";
@@ -6361,6 +6383,7 @@ export {
6361
6383
  DEPLOYMENT_TEMPLATES,
6362
6384
  getTemplate,
6363
6385
  detectDrift,
6386
+ isSuppressOutput,
6364
6387
  provision
6365
6388
  };
6366
- //# sourceMappingURL=chunk-WNYQKTBP.js.map
6389
+ //# sourceMappingURL=chunk-Y2ZGJIXI.js.map