kandown 0.27.1 → 0.28.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/CHANGELOG.md +8 -0
- package/bin/kandown.js +22 -5
- package/dist/index.html +254 -142
- package/package.json +2 -1
- package/templates/AGENT_KANDOWN.md +14 -0
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,13 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 0.28.0 — 2026-07-20 — "Agent Instruction Modes & CLI Reference"
|
|
4
|
+
|
|
5
|
+
- **Added**: **3 Base Agent Rule Modes (Verbose, Optimized, Caveman)** — redesigned the Agent instructions settings into 3 distinct rule density modes. Users can choose between **Verbose** (full reference guide), **Optimized** (concise, high-density structured rules tailored for LLMs), and **Caveman** (ultra-compact minimal token rules).
|
|
6
|
+
- **Added**: **Quick CLI Commands Reference in Agent Rules** — added a concise CLI cheatsheet table (`kandown work`, `kandown list`, `kandown show`, `kandown create`, `kandown move`, `kandown assign`, `kandown commit`) right at the top of base rules across all modes so AI agents immediately know the native CLI commands available to interact with the board.
|
|
7
|
+
- **Added**: **3-Step Numbered Layout for Agent Settings** — reorganized the Agent Instructions settings page into 3 clear numbered step cards: Step 1 (Base Rules mode & density), Step 2 (Project Guidelines stored in `.kandown/instructions.md`), and Step 3 (Live Board State data filters).
|
|
8
|
+
- **Added**: **Quick Preset Instruction Chips** — added 1-click template insertion chips (`📦 pnpm`, `🧪 Test rule`, `🌳 Git rule`, `⚡ Task log`) below the project instructions editor for adding repository rules instantly.
|
|
9
|
+
- **Added**: **Terminal-Style Sticky Live Preview Panel** — added an independent sticky preview panel on the right with window dot indicators, token estimation badge, layer legend badges (🟢 Step 1, 🟡 Step 2, 🔵 Step 3), 1-click Copy button, and real-time interactive color highlighting when hovering over options.
|
|
10
|
+
|
|
3
11
|
## 0.27.1 — 2026-07-20 — "Auto-Updater & Daemon Process Upgrade"
|
|
4
12
|
|
|
5
13
|
- **Fixed**: **Environment inheritance during background auto-update** — cleaned inherited `npm_config_*` and `npm_*` environment variables when spawning `npm install -g kandown` in `checkForUpdate()`. Previously, if Kandown was run via `npx` or `npm run`, inherited local prefix overrides could cause global background updates to fail or target a temporary cache.
|
package/bin/kandown.js
CHANGED
|
@@ -1575,18 +1575,32 @@ function priorityRank(p) {
|
|
|
1575
1575
|
}
|
|
1576
1576
|
|
|
1577
1577
|
const WORK_OUTPUT_SECTION_IDS = ['baseRules', 'projectInstructions', 'boardDigest'];
|
|
1578
|
-
const
|
|
1578
|
+
const OPTIMIZED_AGENT_RULES = `# Kandown agent rules
|
|
1579
1579
|
|
|
1580
|
+
## CLI Commands
|
|
1581
|
+
- \`kandown list\` (list tasks) · \`kandown show <id>\` (view task)
|
|
1582
|
+
- \`kandown create "<title>"\` (create task) · \`kandown move <id> <status>\` (move task column)
|
|
1583
|
+
- \`kandown assign <id> <user>\` · \`kandown commit\` (commit board to git)
|
|
1584
|
+
|
|
1585
|
+
## Rules
|
|
1580
1586
|
- Task state lives in project-root \`tasks/*.md\`; do not maintain a separate board index.
|
|
1581
1587
|
- Before work, read the relevant task file and keep it updated while you progress.
|
|
1582
1588
|
- Move tasks by editing frontmatter \`status:\`; complete work by setting \`status: Done\` and adding a markdown \`report:\` summary.
|
|
1583
1589
|
- Update subtasks in-place: \`- [ ]\` → \`- [x]\`, with a short \`report:\` line for meaningful progress.
|
|
1584
1590
|
- Board columns live in \`.kandown/kandown.json\` under \`board.columns\`; project instructions live in \`.kandown/instructions.md\`.
|
|
1585
1591
|
- Never put Kandown task data inside \`.kandown/\`; tasks belong in \`./tasks/\`.`;
|
|
1592
|
+
|
|
1593
|
+
const CAVEMAN_AGENT_RULES = `# Kandown agent rules
|
|
1594
|
+
|
|
1595
|
+
CLI: kandown list | kandown show <id> | kandown create "<title>" | kandown move <id> <status> | kandown assign <id> <user> | kandown commit
|
|
1596
|
+
RULES: TASKS IN ./tasks/*.md. READ TASK BEFORE WORK. UPDATE SUBTASKS - [ ] -> - [x] + REPORT. MOVE: EDIT status:. DONE: status: Done + report:.`;
|
|
1597
|
+
|
|
1598
|
+
const CONCISE_AGENT_RULES = OPTIMIZED_AGENT_RULES;
|
|
1599
|
+
|
|
1586
1600
|
const DEFAULT_WORK_OUTPUT = {
|
|
1587
1601
|
mode: 'blocks',
|
|
1588
1602
|
includeBaseRules: true,
|
|
1589
|
-
baseRulesMode: '
|
|
1603
|
+
baseRulesMode: 'verbose',
|
|
1590
1604
|
includeProjectInstructions: true,
|
|
1591
1605
|
includeBoardDigest: true,
|
|
1592
1606
|
sectionOrder: WORK_OUTPUT_SECTION_IDS,
|
|
@@ -1612,11 +1626,13 @@ function normalizeWorkOutputConfig(config) {
|
|
|
1612
1626
|
? raw.sectionOrder.filter(id => WORK_OUTPUT_SECTION_IDS.includes(id))
|
|
1613
1627
|
: DEFAULT_WORK_OUTPUT.sectionOrder;
|
|
1614
1628
|
const order = sectionOrder.length > 0 ? sectionOrder : DEFAULT_WORK_OUTPUT.sectionOrder;
|
|
1629
|
+
const validBaseModes = ['verbose', 'optimized', 'caveman', 'full', 'concise'];
|
|
1630
|
+
const baseMode = validBaseModes.includes(raw.baseRulesMode) ? raw.baseRulesMode : DEFAULT_WORK_OUTPUT.baseRulesMode;
|
|
1615
1631
|
return {
|
|
1616
1632
|
...DEFAULT_WORK_OUTPUT,
|
|
1617
1633
|
...raw,
|
|
1618
1634
|
mode: raw.mode === 'raw' ? 'raw' : 'blocks',
|
|
1619
|
-
baseRulesMode:
|
|
1635
|
+
baseRulesMode: baseMode,
|
|
1620
1636
|
sectionOrder: order,
|
|
1621
1637
|
rawTemplate: typeof raw.rawTemplate === 'string' && raw.rawTemplate.trim()
|
|
1622
1638
|
? raw.rawTemplate
|
|
@@ -1625,8 +1641,9 @@ function normalizeWorkOutputConfig(config) {
|
|
|
1625
1641
|
};
|
|
1626
1642
|
}
|
|
1627
1643
|
|
|
1628
|
-
function readBaseAgentRules(mode = '
|
|
1629
|
-
if (mode === '
|
|
1644
|
+
function readBaseAgentRules(mode = 'verbose') {
|
|
1645
|
+
if (mode === 'caveman') return CAVEMAN_AGENT_RULES;
|
|
1646
|
+
if (mode === 'optimized' || mode === 'concise') return OPTIMIZED_AGENT_RULES;
|
|
1630
1647
|
try {
|
|
1631
1648
|
return readFileSync(join(PKG_ROOT, 'templates', 'AGENT_KANDOWN.md'), 'utf8').trim();
|
|
1632
1649
|
} catch (e) {
|