@goodandready/dsh-kanban 0.2.28 → 0.2.29

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/lib/config.js CHANGED
@@ -107,7 +107,7 @@ export const CONFIG_HINTS = {
107
107
  progressDumpEnabled: 'Enable PROGRESSDUMP state checkpoints between agent sessions.',
108
108
  permissionGateEnabled: 'Require human confirmation before launching elevated permission tasks.',
109
109
  sessionDefaultPermission: 'Default permission tier for task sessions (read-only, workspace-write, danger-full-access).',
110
- announceToAgent: 'Post stage change announcement messages directly into task agent session.',
110
+ announceToAgent: 'Inject board instructions and handover guidance into the agent system prompt.',
111
111
  maxConcurrentSessions: 'Maximum number of simultaneous active agent sessions on the board.',
112
112
  workspaceClaimBoundaries: 'Enforce workspace ownership boundaries to prevent cross-workspace task execution.',
113
113
  autoSyncSessions: 'Automatically sync and attach live background agent sessions to cards.',
@@ -178,3 +178,26 @@ export function columnNamesOf(config) {
178
178
  }
179
179
  return out
180
180
  }
181
+
182
+ /**
183
+ * Build prompt section text based on enabled board features.
184
+ * Returns null if no features requiring agent guidance are active.
185
+ *
186
+ * @param {object} cfg configuration
187
+ * @returns {string|null}
188
+ */
189
+ export function buildPromptSectionText(cfg) {
190
+ if (cfg?.announceToAgent === false) return null
191
+ const parts = []
192
+ if (cfg?.boardToolEnabled === true) {
193
+ parts.push(
194
+ 'The dsh-kanban task board is available in the system. When working on tasks, you can move cards using the board_move tool and manage the plan checklist via board_plan.'
195
+ )
196
+ }
197
+ if (cfg?.progressDumpEnabled === true) {
198
+ parts.push(
199
+ 'When context is running low or a milestone is reached, output a <<<PROGRESSDUMP\nGoal: ...\nProgress: ...\nNext steps: ...\n>>>PROGRESSDUMP block to hand over to the next session.'
200
+ )
201
+ }
202
+ return parts.length > 0 ? parts.join(' ') : null
203
+ }
package/lib/index.js CHANGED
@@ -94,12 +94,13 @@ import {
94
94
  withDefaults,
95
95
  CONFIG_DEFAULTS,
96
96
  CONFIG_HINTS,
97
+ buildPromptSectionText,
97
98
  rootOf,
98
99
  } from './config.js'
99
100
  import { eventHub } from './events.js'
100
101
  import { TASK_TEMPLATES, getTemplateById } from './templates.js'
101
102
 
102
- export { COLUMN_ORDER, wipLimitField, withDefaults } from './config.js'
103
+ export { COLUMN_ORDER, buildPromptSectionText, wipLimitField, withDefaults } from './config.js'
103
104
 
104
105
  /** Stable cordis plugin name (patch identifier). */
105
106
  export const name = '@goodandready/dsh-kanban'
@@ -370,12 +371,13 @@ export function apply(ctx, config) {
370
371
  }
371
372
  const cfg = getConfig()
372
373
  const sp = ctx.get('systemPrompt')
373
- if (cfg.announceToAgent !== false && sp && typeof sp.section === 'function') {
374
+ const promptText = buildPromptSectionText(cfg)
375
+ if (promptText && sp && typeof sp.section === 'function') {
374
376
  try {
375
377
  disposePromptSection = sp.section({
376
378
  name: 'plugin:dsh-kanban',
377
379
  order: 200,
378
- text: 'The dsh-kanban task board is available in the system. When working on tasks, you can move cards using the board_move tool and manage the plan checklist via board_plan. When context is running low or a milestone is reached, output a <<<PROGRESSDUMP\nGoal: ...\nProgress: ...\nNext steps: ...\n>>>PROGRESSDUMP block to hand over to the next session.',
380
+ text: promptText,
379
381
  })
380
382
  } catch (err) {
381
383
  ctx.logger?.warn?.(`dsh-kanban: failed to register system prompt section: ${err?.message}`)
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@goodandready/dsh-kanban",
3
- "version": "0.2.28",
3
+ "version": "0.2.29",
4
4
  "description": "Visual Kanban board for DeepSeek Harness: Gitea and GitHub-backed tasks, workflow columns, and a dedicated agent session per task.",
5
5
  "type": "module",
6
6
  "main": "lib/index.js",