feat(skills): full engineering-workflow skill set + codex target + worktree support - #2

Open
datj9 wants to merge 2 commits into
masterfrom
feat/engineering-workflow-skills
Open

feat(skills): full engineering-workflow skill set + codex target + worktree support#2
datj9 wants to merge 2 commits into
masterfrom
feat/engineering-workflow-skills

Conversation

@datj9

Copy link
Copy Markdown
Owner

What changed

Fills dat-devkit out into a complete engineering loop and makes the harness work inside git worktrees. Inspired by mattpocock/skills, adapted to this kit's GitHub-native, agent-orchestrated conventions.

The loop is now: align → specify → decompose → execute → verify → ship → maintain → triage → hand off. Previously the kit only covered execute→ship.

New workflow skills (Claude + Codex mirrors)

SkillRole
/grillRelentless one-question-at-a-time alignment interview before any code (fixes agent misalignment)
/prdSynthesize the conversation into .devkit/prd.md; optionally open as a GitHub issue
/to-issuesDecompose a PRD/plan into thin vertical-slice GitHub issues (AFK/HITL, dependency-ordered)
/zoom-outMap an unfamiliar area a layer up (uses CodeGraph); persist durable terms to CONTEXT.md
/improve-architectureFind shallow-module / ball-of-mud friction, propose deepening refactors + ADRs
/triageMove GitHub issues through a triage state machine with agent briefs
/handoffCompact a session into a temp-dir handoff doc for a fresh agent
/worktreeCreate a git worktree and install the harness into it

Also adds the shared CONTEXT.md glossary convention (_shared/context-doc.md) so specs/issues/reviews speak the project's domain language.

Worktree support

  • New bin/devkit-worktree.shadd / sync / sync-all / list. Resolves the main checkout via git rev-parse --git-common-dir and syncs .claude/ into a worktree with correct excludes (worktrees/, per-worktree .devkit/ state).
  • Rewrote rules/worktree.md around the helper (was a fragile manual rsync).
  • Hooks/statusline already use git rev-parse --git-dir, so they resolve through a worktree's .gitfile; workflow state stays isolated per worktree.

Codex/Gemini target

  • Full codex skill mirrors for the existing 7 skills + the 8 new ones.
  • Fix: the codex/gemini installers never copied harness/codex/_shared/, leaving ../_shared/*.md references dangling in those targets. Now copied.

Docs

  • CLAUDE.md skill registry and README.md updated to the full loop (15 core skills).

How to test

# Fresh install, all four targets
mkdir -p /tmp/t &&fortin claude codex gemini hermes;do ./install.sh typescript /tmp/t --target $t --dry-run;done# Worktree flow (in any installed project)
.claude/bin/devkit-worktree.sh add ../feature-x -b feat/x
.claude/bin/devkit-worktree.sh list

Checklist

  • All 4 install targets dry-run clean (claude/codex/gemini/hermes)
  • Worktree helper verified end-to-end against a real git worktree
  • Common/Codex skill parity; frontmatter + reference links validated
  • Merged latest master (hermes target) — conflicts in install.sh/README.md resolved
  • Tests pass (n/a — docs/shell harness, no test suite)

…+ worktree support
Fill out dat-devkit into a full engineering loop (align → specify → decompose →
execute → verify → ship → maintain → triage → hand off), add the codex/gemini
skill target, and make the harness work inside git worktrees.
Workflow skills (Claude + Codex), inspired by mattpocock/skills:
- /grill relentless one-question-at-a-time alignment interview
- /prd synthesize conversation into .devkit/prd.md (optional GitHub issue)
- /to-issues decompose a plan into vertical-slice GitHub issues (AFK/HITL)
- /zoom-out map unfamiliar code a layer up; persist terms to CONTEXT.md
- /improve-architecture find shallow-module friction, propose deepening + ADRs
- /triage GitHub issue triage state machine with agent briefs
- /handoff compact a session into a temp-dir handoff doc
- /worktree create a git worktree and install the harness into it
Worktree support:
- bin/devkit-worktree.sh — add/sync/sync-all/list; resolves the main checkout via
git-common-dir and syncs .claude/ with correct excludes (worktrees/, .devkit/ state)
- rewrite rules/worktree.md around the helper (was a manual rsync)
Shared CONTEXT.md glossary convention (_shared/context-doc.md) tying the alignment
skills to the project's domain language.
install.sh: codex/gemini installers now also copy _shared/ (fixes dangling
../_shared/*.md references in those targets).
Docs: CLAUDE.md skill registry + README updated to the full loop.
…rkflow-skills
# Conflicts:
#	README.md
#	install.sh
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants

@datj9@datnguyen-ringkas
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Add copy buttons to all
 blocks\n(function() {\n function addCopyButtons() {\n document.querySelectorAll('pre code').forEach(function(codeBlock) {\n if (codeBlock.parentElement.hasAttribute('data-copy-added')) return;\n codeBlock.parentElement.setAttribute('data-copy-added', 'true');\n \n var btn = document.createElement('button');\n btn.textContent = 'Copy';\n btn.style.cssText = 'position:absolute;top:4px;right:4px;padding:2px 8px;font-size:11px;background:#4ecdc4;border:none;border-radius:4px;color:#1a1a2e;cursor:pointer;opacity:0.7;transition:opacity 0.2s;';\n btn.onmouseover = function() { this.style.opacity = '1'; };\n btn.onmouseout = function() { this.style.opacity = '0.7'; };\n btn.onclick = function() {\n navigator.clipboard.writeText(codeBlock.textContent).then(function() {\n btn.textContent = 'Copied!';\n setTimeout(function() { btn.textContent = 'Copy'; }, 1500);\n });\n };\n codeBlock.parentElement.style.position = 'relative';\n codeBlock.parentElement.appendChild(btn);\n });\n }\n \n addCopyButtons();\n \n // Re-run on dynamic content\n var observer = new MutationObserver(addCopyButtons);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Add Copy Buttons to Code Blocks");
}
} catch(__e) { console.warn('[Userscript:Add Copy Buttons to Code Blocks]', __e); }
})();
(function(){
try {
var __m = "github.com";
var __re = new RegExp('^' + "github\\.com" + '
Skip to content

feat(skills): full engineering-workflow skill set + codex target + worktree support - #2

Open
datj9 wants to merge 2 commits into
masterfrom
feat/engineering-workflow-skills
Open

feat(skills): full engineering-workflow skill set + codex target + worktree support#2
datj9 wants to merge 2 commits into
masterfrom
feat/engineering-workflow-skills

Conversation

@datj9

Copy link
Copy Markdown
Owner

What changed

Fills dat-devkit out into a complete engineering loop and makes the harness work inside git worktrees. Inspired by mattpocock/skills, adapted to this kit's GitHub-native, agent-orchestrated conventions.

The loop is now: align → specify → decompose → execute → verify → ship → maintain → triage → hand off. Previously the kit only covered execute→ship.

New workflow skills (Claude + Codex mirrors)

SkillRole
/grillRelentless one-question-at-a-time alignment interview before any code (fixes agent misalignment)
/prdSynthesize the conversation into .devkit/prd.md; optionally open as a GitHub issue
/to-issuesDecompose a PRD/plan into thin vertical-slice GitHub issues (AFK/HITL, dependency-ordered)
/zoom-outMap an unfamiliar area a layer up (uses CodeGraph); persist durable terms to CONTEXT.md
/improve-architectureFind shallow-module / ball-of-mud friction, propose deepening refactors + ADRs
/triageMove GitHub issues through a triage state machine with agent briefs
/handoffCompact a session into a temp-dir handoff doc for a fresh agent
/worktreeCreate a git worktree and install the harness into it

Also adds the shared CONTEXT.md glossary convention (_shared/context-doc.md) so specs/issues/reviews speak the project's domain language.

Worktree support

  • New bin/devkit-worktree.shadd / sync / sync-all / list. Resolves the main checkout via git rev-parse --git-common-dir and syncs .claude/ into a worktree with correct excludes (worktrees/, per-worktree .devkit/ state).
  • Rewrote rules/worktree.md around the helper (was a fragile manual rsync).
  • Hooks/statusline already use git rev-parse --git-dir, so they resolve through a worktree's .gitfile; workflow state stays isolated per worktree.

Codex/Gemini target

  • Full codex skill mirrors for the existing 7 skills + the 8 new ones.
  • Fix: the codex/gemini installers never copied harness/codex/_shared/, leaving ../_shared/*.md references dangling in those targets. Now copied.

Docs

  • CLAUDE.md skill registry and README.md updated to the full loop (15 core skills).

How to test

# Fresh install, all four targets
mkdir -p /tmp/t &&fortin claude codex gemini hermes;do ./install.sh typescript /tmp/t --target $t --dry-run;done# Worktree flow (in any installed project)
.claude/bin/devkit-worktree.sh add ../feature-x -b feat/x
.claude/bin/devkit-worktree.sh list

Checklist

  • All 4 install targets dry-run clean (claude/codex/gemini/hermes)
  • Worktree helper verified end-to-end against a real git worktree
  • Common/Codex skill parity; frontmatter + reference links validated
  • Merged latest master (hermes target) — conflicts in install.sh/README.md resolved
  • Tests pass (n/a — docs/shell harness, no test suite)

…+ worktree support
Fill out dat-devkit into a full engineering loop (align → specify → decompose →
execute → verify → ship → maintain → triage → hand off), add the codex/gemini
skill target, and make the harness work inside git worktrees.
Workflow skills (Claude + Codex), inspired by mattpocock/skills:
- /grill relentless one-question-at-a-time alignment interview
- /prd synthesize conversation into .devkit/prd.md (optional GitHub issue)
- /to-issues decompose a plan into vertical-slice GitHub issues (AFK/HITL)
- /zoom-out map unfamiliar code a layer up; persist terms to CONTEXT.md
- /improve-architecture find shallow-module friction, propose deepening + ADRs
- /triage GitHub issue triage state machine with agent briefs
- /handoff compact a session into a temp-dir handoff doc
- /worktree create a git worktree and install the harness into it
Worktree support:
- bin/devkit-worktree.sh — add/sync/sync-all/list; resolves the main checkout via
git-common-dir and syncs .claude/ with correct excludes (worktrees/, .devkit/ state)
- rewrite rules/worktree.md around the helper (was a manual rsync)
Shared CONTEXT.md glossary convention (_shared/context-doc.md) tying the alignment
skills to the project's domain language.
install.sh: codex/gemini installers now also copy _shared/ (fixes dangling
../_shared/*.md references in those targets).
Docs: CLAUDE.md skill registry + README updated to the full loop.
…rkflow-skills
# Conflicts:
#	README.md
#	install.sh
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants

@datj9@datnguyen-ringkas
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Force GitHub README to respect dark mode\n(function() {\n var style = document.createElement('style');\n style.textContent = '\n .markdown-body {\n color-scheme: dark light;\n }\n .markdown-body pre { background: #161b22 !important; }\n .markdown-body code { background: rgba(110, 118, 129, 0.4) !important; }\n .markdown-body table th, .markdown-body table td { border-color: #30363d !important; }\n .markdown-body img { background: #0d1117; }\n .markdown-body blockquote { border-left-color: #8b949e; }\n .markdown-body hr { border-color: #30363d; }\n ';\n document.head.appendChild(style);\n})();", "GitHub Dark Mode README Fix"); } } catch(__e) { console.warn('[Userscript:GitHub Dark Mode README Fix]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

feat(skills): full engineering-workflow skill set + codex target + worktree support - #2

Open
datj9 wants to merge 2 commits into
masterfrom
feat/engineering-workflow-skills
Open

feat(skills): full engineering-workflow skill set + codex target + worktree support#2
datj9 wants to merge 2 commits into
masterfrom
feat/engineering-workflow-skills

Conversation

@datj9

Copy link
Copy Markdown
Owner

What changed

Fills dat-devkit out into a complete engineering loop and makes the harness work inside git worktrees. Inspired by mattpocock/skills, adapted to this kit's GitHub-native, agent-orchestrated conventions.

The loop is now: align → specify → decompose → execute → verify → ship → maintain → triage → hand off. Previously the kit only covered execute→ship.

New workflow skills (Claude + Codex mirrors)

SkillRole
/grillRelentless one-question-at-a-time alignment interview before any code (fixes agent misalignment)
/prdSynthesize the conversation into .devkit/prd.md; optionally open as a GitHub issue
/to-issuesDecompose a PRD/plan into thin vertical-slice GitHub issues (AFK/HITL, dependency-ordered)
/zoom-outMap an unfamiliar area a layer up (uses CodeGraph); persist durable terms to CONTEXT.md
/improve-architectureFind shallow-module / ball-of-mud friction, propose deepening refactors + ADRs
/triageMove GitHub issues through a triage state machine with agent briefs
/handoffCompact a session into a temp-dir handoff doc for a fresh agent
/worktreeCreate a git worktree and install the harness into it

Also adds the shared CONTEXT.md glossary convention (_shared/context-doc.md) so specs/issues/reviews speak the project's domain language.

Worktree support

  • New bin/devkit-worktree.shadd / sync / sync-all / list. Resolves the main checkout via git rev-parse --git-common-dir and syncs .claude/ into a worktree with correct excludes (worktrees/, per-worktree .devkit/ state).
  • Rewrote rules/worktree.md around the helper (was a fragile manual rsync).
  • Hooks/statusline already use git rev-parse --git-dir, so they resolve through a worktree's .gitfile; workflow state stays isolated per worktree.

Codex/Gemini target

  • Full codex skill mirrors for the existing 7 skills + the 8 new ones.
  • Fix: the codex/gemini installers never copied harness/codex/_shared/, leaving ../_shared/*.md references dangling in those targets. Now copied.

Docs

  • CLAUDE.md skill registry and README.md updated to the full loop (15 core skills).

How to test

# Fresh install, all four targets
mkdir -p /tmp/t &&fortin claude codex gemini hermes;do ./install.sh typescript /tmp/t --target $t --dry-run;done# Worktree flow (in any installed project)
.claude/bin/devkit-worktree.sh add ../feature-x -b feat/x
.claude/bin/devkit-worktree.sh list

Checklist

  • All 4 install targets dry-run clean (claude/codex/gemini/hermes)
  • Worktree helper verified end-to-end against a real git worktree
  • Common/Codex skill parity; frontmatter + reference links validated
  • Merged latest master (hermes target) — conflicts in install.sh/README.md resolved
  • Tests pass (n/a — docs/shell harness, no test suite)

…+ worktree support
Fill out dat-devkit into a full engineering loop (align → specify → decompose →
execute → verify → ship → maintain → triage → hand off), add the codex/gemini
skill target, and make the harness work inside git worktrees.
Workflow skills (Claude + Codex), inspired by mattpocock/skills:
- /grill relentless one-question-at-a-time alignment interview
- /prd synthesize conversation into .devkit/prd.md (optional GitHub issue)
- /to-issues decompose a plan into vertical-slice GitHub issues (AFK/HITL)
- /zoom-out map unfamiliar code a layer up; persist terms to CONTEXT.md
- /improve-architecture find shallow-module friction, propose deepening + ADRs
- /triage GitHub issue triage state machine with agent briefs
- /handoff compact a session into a temp-dir handoff doc
- /worktree create a git worktree and install the harness into it
Worktree support:
- bin/devkit-worktree.sh — add/sync/sync-all/list; resolves the main checkout via
git-common-dir and syncs .claude/ with correct excludes (worktrees/, .devkit/ state)
- rewrite rules/worktree.md around the helper (was a manual rsync)
Shared CONTEXT.md glossary convention (_shared/context-doc.md) tying the alignment
skills to the project's domain language.
install.sh: codex/gemini installers now also copy _shared/ (fixes dangling
../_shared/*.md references in those targets).
Docs: CLAUDE.md skill registry + README updated to the full loop.
…rkflow-skills
# Conflicts:
#	README.md
#	install.sh
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants

@datj9@datnguyen-ringkas
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Highlight search terms from Google/DuckDuckGo/Bing referrer\n(function() {\n var ref = document.referrer;\n var terms = [];\n \n if (ref.includes('google.com') || ref.includes('duckduckgo.com') || ref.includes('bing.com')) {\n var url = new URL(ref);\n var q = url.searchParams.get('q') || url.searchParams.get('p');\n if (q) {\n terms = q.split(/\\s+/).filter(function(t) { return t.length > 2; });\n }\n }\n \n if (terms.length === 0) return;\n \n var style = document.createElement('style');\n style.textContent = '.userscript-highlight { background: #fbbf24; color: #1a1a2e; padding: 1px 3px; border-radius: 2px; }';\n document.head.appendChild(style);\n \n function highlight(node) {\n if (node.nodeType === 3) { // text node\n var text = node.textContent;\n var found = false;\n terms.forEach(function(term) {\n var regex = new RegExp('(' + term.replace(/[.*+?^${}()|[\\]\\\\]/g, '\\\\') + ')', 'gi');\n if (regex.test(text)) {\n found = true;\n var frag = document.createDocumentFragment();\n var parts = text.split(regex);\n parts.forEach(function(part, i) {\n if (i % 2 === 0) {\n frag.appendChild(document.createTextNode(part));\n } else {\n var span = document.createElement('span');\n span.className = 'userscript-highlight';\n span.textContent = part;\n frag.appendChild(span);\n }\n });\n node.parentNode.replaceChild(frag, node);\n }\n });\n } else if (node.nodeType === 1 && node.childNodes) { // element\n var skipTags = ['SCRIPT', 'STYLE', 'NOSCRIPT', 'TEXTAREA', 'INPUT', 'SELECT'];\n if (!skipTags.includes(node.tagName)) {\n Array.from(node.childNodes).forEach(highlight);\n }\n }\n }\n \n highlight(document.body);\n \n // Re-highlight on dynamic content\n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1 || node.nodeType === 3) highlight(node);\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Highlight Search Terms"); } } catch(__e) { console.warn('[Userscript:Highlight Search Terms]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

feat(skills): full engineering-workflow skill set + codex target + worktree support - #2

Open
datj9 wants to merge 2 commits into
masterfrom
feat/engineering-workflow-skills
Open

feat(skills): full engineering-workflow skill set + codex target + worktree support#2
datj9 wants to merge 2 commits into
masterfrom
feat/engineering-workflow-skills

Conversation

@datj9

Copy link
Copy Markdown
Owner

What changed

Fills dat-devkit out into a complete engineering loop and makes the harness work inside git worktrees. Inspired by mattpocock/skills, adapted to this kit's GitHub-native, agent-orchestrated conventions.

The loop is now: align → specify → decompose → execute → verify → ship → maintain → triage → hand off. Previously the kit only covered execute→ship.

New workflow skills (Claude + Codex mirrors)

SkillRole
/grillRelentless one-question-at-a-time alignment interview before any code (fixes agent misalignment)
/prdSynthesize the conversation into .devkit/prd.md; optionally open as a GitHub issue
/to-issuesDecompose a PRD/plan into thin vertical-slice GitHub issues (AFK/HITL, dependency-ordered)
/zoom-outMap an unfamiliar area a layer up (uses CodeGraph); persist durable terms to CONTEXT.md
/improve-architectureFind shallow-module / ball-of-mud friction, propose deepening refactors + ADRs
/triageMove GitHub issues through a triage state machine with agent briefs
/handoffCompact a session into a temp-dir handoff doc for a fresh agent
/worktreeCreate a git worktree and install the harness into it

Also adds the shared CONTEXT.md glossary convention (_shared/context-doc.md) so specs/issues/reviews speak the project's domain language.

Worktree support

  • New bin/devkit-worktree.shadd / sync / sync-all / list. Resolves the main checkout via git rev-parse --git-common-dir and syncs .claude/ into a worktree with correct excludes (worktrees/, per-worktree .devkit/ state).
  • Rewrote rules/worktree.md around the helper (was a fragile manual rsync).
  • Hooks/statusline already use git rev-parse --git-dir, so they resolve through a worktree's .gitfile; workflow state stays isolated per worktree.

Codex/Gemini target

  • Full codex skill mirrors for the existing 7 skills + the 8 new ones.
  • Fix: the codex/gemini installers never copied harness/codex/_shared/, leaving ../_shared/*.md references dangling in those targets. Now copied.

Docs

  • CLAUDE.md skill registry and README.md updated to the full loop (15 core skills).

How to test

# Fresh install, all four targets
mkdir -p /tmp/t &&fortin claude codex gemini hermes;do ./install.sh typescript /tmp/t --target $t --dry-run;done# Worktree flow (in any installed project)
.claude/bin/devkit-worktree.sh add ../feature-x -b feat/x
.claude/bin/devkit-worktree.sh list

Checklist

  • All 4 install targets dry-run clean (claude/codex/gemini/hermes)
  • Worktree helper verified end-to-end against a real git worktree
  • Common/Codex skill parity; frontmatter + reference links validated
  • Merged latest master (hermes target) — conflicts in install.sh/README.md resolved
  • Tests pass (n/a — docs/shell harness, no test suite)

…+ worktree support
Fill out dat-devkit into a full engineering loop (align → specify → decompose →
execute → verify → ship → maintain → triage → hand off), add the codex/gemini
skill target, and make the harness work inside git worktrees.
Workflow skills (Claude + Codex), inspired by mattpocock/skills:
- /grill relentless one-question-at-a-time alignment interview
- /prd synthesize conversation into .devkit/prd.md (optional GitHub issue)
- /to-issues decompose a plan into vertical-slice GitHub issues (AFK/HITL)
- /zoom-out map unfamiliar code a layer up; persist terms to CONTEXT.md
- /improve-architecture find shallow-module friction, propose deepening + ADRs
- /triage GitHub issue triage state machine with agent briefs
- /handoff compact a session into a temp-dir handoff doc
- /worktree create a git worktree and install the harness into it
Worktree support:
- bin/devkit-worktree.sh — add/sync/sync-all/list; resolves the main checkout via
git-common-dir and syncs .claude/ with correct excludes (worktrees/, .devkit/ state)
- rewrite rules/worktree.md around the helper (was a manual rsync)
Shared CONTEXT.md glossary convention (_shared/context-doc.md) tying the alignment
skills to the project's domain language.
install.sh: codex/gemini installers now also copy _shared/ (fixes dangling
../_shared/*.md references in those targets).
Docs: CLAUDE.md skill registry + README updated to the full loop.
…rkflow-skills
# Conflicts:
#	README.md
#	install.sh
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants

@datj9@datnguyen-ringkas
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Strip utm_, fbclid, gclid, etc. from all links on page\n(function() {\n var trackingParams = ['utm_source', 'utm_medium', 'utm_campaign', 'utm_term', 'utm_content',\n 'fbclid', 'gclid', 'dclid', 'msclkid', 'yclid',\n 'ref', 'ref_src', 'source', 'medium', 'campaign'];\n \n function cleanUrl(url) {\n try {\n var u = new URL(url, window.location.origin);\n var changed = false;\n trackingParams.forEach(function(p) {\n if (u.searchParams.has(p)) {\n u.searchParams.delete(p);\n changed = true;\n }\n });\n return changed ? u.toString() : url;\n } catch (e) {\n return url;\n }\n }\n \n function cleanLinks() {\n document.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n \n cleanLinks();\n \n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1) {\n if (node.tagName === 'A') cleanLinks();\n node.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Remove Tracking Parameters from Links"); } } catch(__e) { console.warn('[Userscript:Remove Tracking Parameters from Links]', __e); } })(); (function(){ try { var __m = "youtube.com"; var __re = new RegExp('^' + "youtube\\.com" + '
Skip to content

feat(skills): full engineering-workflow skill set + codex target + worktree support - #2

Open
datj9 wants to merge 2 commits into
masterfrom
feat/engineering-workflow-skills
Open

feat(skills): full engineering-workflow skill set + codex target + worktree support#2
datj9 wants to merge 2 commits into
masterfrom
feat/engineering-workflow-skills

Conversation

@datj9

Copy link
Copy Markdown
Owner

What changed

Fills dat-devkit out into a complete engineering loop and makes the harness work inside git worktrees. Inspired by mattpocock/skills, adapted to this kit's GitHub-native, agent-orchestrated conventions.

The loop is now: align → specify → decompose → execute → verify → ship → maintain → triage → hand off. Previously the kit only covered execute→ship.

New workflow skills (Claude + Codex mirrors)

SkillRole
/grillRelentless one-question-at-a-time alignment interview before any code (fixes agent misalignment)
/prdSynthesize the conversation into .devkit/prd.md; optionally open as a GitHub issue
/to-issuesDecompose a PRD/plan into thin vertical-slice GitHub issues (AFK/HITL, dependency-ordered)
/zoom-outMap an unfamiliar area a layer up (uses CodeGraph); persist durable terms to CONTEXT.md
/improve-architectureFind shallow-module / ball-of-mud friction, propose deepening refactors + ADRs
/triageMove GitHub issues through a triage state machine with agent briefs
/handoffCompact a session into a temp-dir handoff doc for a fresh agent
/worktreeCreate a git worktree and install the harness into it

Also adds the shared CONTEXT.md glossary convention (_shared/context-doc.md) so specs/issues/reviews speak the project's domain language.

Worktree support

  • New bin/devkit-worktree.shadd / sync / sync-all / list. Resolves the main checkout via git rev-parse --git-common-dir and syncs .claude/ into a worktree with correct excludes (worktrees/, per-worktree .devkit/ state).
  • Rewrote rules/worktree.md around the helper (was a fragile manual rsync).
  • Hooks/statusline already use git rev-parse --git-dir, so they resolve through a worktree's .gitfile; workflow state stays isolated per worktree.

Codex/Gemini target

  • Full codex skill mirrors for the existing 7 skills + the 8 new ones.
  • Fix: the codex/gemini installers never copied harness/codex/_shared/, leaving ../_shared/*.md references dangling in those targets. Now copied.

Docs

  • CLAUDE.md skill registry and README.md updated to the full loop (15 core skills).

How to test

# Fresh install, all four targets
mkdir -p /tmp/t &&fortin claude codex gemini hermes;do ./install.sh typescript /tmp/t --target $t --dry-run;done# Worktree flow (in any installed project)
.claude/bin/devkit-worktree.sh add ../feature-x -b feat/x
.claude/bin/devkit-worktree.sh list

Checklist

  • All 4 install targets dry-run clean (claude/codex/gemini/hermes)
  • Worktree helper verified end-to-end against a real git worktree
  • Common/Codex skill parity; frontmatter + reference links validated
  • Merged latest master (hermes target) — conflicts in install.sh/README.md resolved
  • Tests pass (n/a — docs/shell harness, no test suite)

…+ worktree support
Fill out dat-devkit into a full engineering loop (align → specify → decompose →
execute → verify → ship → maintain → triage → hand off), add the codex/gemini
skill target, and make the harness work inside git worktrees.
Workflow skills (Claude + Codex), inspired by mattpocock/skills:
- /grill relentless one-question-at-a-time alignment interview
- /prd synthesize conversation into .devkit/prd.md (optional GitHub issue)
- /to-issues decompose a plan into vertical-slice GitHub issues (AFK/HITL)
- /zoom-out map unfamiliar code a layer up; persist terms to CONTEXT.md
- /improve-architecture find shallow-module friction, propose deepening + ADRs
- /triage GitHub issue triage state machine with agent briefs
- /handoff compact a session into a temp-dir handoff doc
- /worktree create a git worktree and install the harness into it
Worktree support:
- bin/devkit-worktree.sh — add/sync/sync-all/list; resolves the main checkout via
git-common-dir and syncs .claude/ with correct excludes (worktrees/, .devkit/ state)
- rewrite rules/worktree.md around the helper (was a manual rsync)
Shared CONTEXT.md glossary convention (_shared/context-doc.md) tying the alignment
skills to the project's domain language.
install.sh: codex/gemini installers now also copy _shared/ (fixes dangling
../_shared/*.md references in those targets).
Docs: CLAUDE.md skill registry + README updated to the full loop.
…rkflow-skills
# Conflicts:
#	README.md
#	install.sh
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants

@datj9@datnguyen-ringkas
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Auto-enable theater mode on YouTube\n(function() {\n function tryTheater() {\n var btn = document.querySelector('button[aria-label=\"Theater mode\"], ytd-player #player button[title=\"Theater mode\"]');\n if (btn && !btn.classList.contains('activated')) {\n btn.click();\n }\n }\n \n // Try immediately\n tryTheater();\n \n // Try after navigation (SPA)\n var lastUrl = location.href;\n setInterval(function() {\n if (location.href !== lastUrl) {\n lastUrl = location.href;\n setTimeout(tryTheater, 500);\n }\n }, 1000);\n \n // Also try on player load\n var observer = new MutationObserver(tryTheater);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "YouTube Theater Mode Default"); } } catch(__e) { console.warn('[Userscript:YouTube Theater Mode Default]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

feat(skills): full engineering-workflow skill set + codex target + worktree support - #2

Open
datj9 wants to merge 2 commits into
masterfrom
feat/engineering-workflow-skills
Open

feat(skills): full engineering-workflow skill set + codex target + worktree support#2
datj9 wants to merge 2 commits into
masterfrom
feat/engineering-workflow-skills

Conversation

@datj9

Copy link
Copy Markdown
Owner

What changed

Fills dat-devkit out into a complete engineering loop and makes the harness work inside git worktrees. Inspired by mattpocock/skills, adapted to this kit's GitHub-native, agent-orchestrated conventions.

The loop is now: align → specify → decompose → execute → verify → ship → maintain → triage → hand off. Previously the kit only covered execute→ship.

New workflow skills (Claude + Codex mirrors)

SkillRole
/grillRelentless one-question-at-a-time alignment interview before any code (fixes agent misalignment)
/prdSynthesize the conversation into .devkit/prd.md; optionally open as a GitHub issue
/to-issuesDecompose a PRD/plan into thin vertical-slice GitHub issues (AFK/HITL, dependency-ordered)
/zoom-outMap an unfamiliar area a layer up (uses CodeGraph); persist durable terms to CONTEXT.md
/improve-architectureFind shallow-module / ball-of-mud friction, propose deepening refactors + ADRs
/triageMove GitHub issues through a triage state machine with agent briefs
/handoffCompact a session into a temp-dir handoff doc for a fresh agent
/worktreeCreate a git worktree and install the harness into it

Also adds the shared CONTEXT.md glossary convention (_shared/context-doc.md) so specs/issues/reviews speak the project's domain language.

Worktree support

  • New bin/devkit-worktree.shadd / sync / sync-all / list. Resolves the main checkout via git rev-parse --git-common-dir and syncs .claude/ into a worktree with correct excludes (worktrees/, per-worktree .devkit/ state).
  • Rewrote rules/worktree.md around the helper (was a fragile manual rsync).
  • Hooks/statusline already use git rev-parse --git-dir, so they resolve through a worktree's .gitfile; workflow state stays isolated per worktree.

Codex/Gemini target

  • Full codex skill mirrors for the existing 7 skills + the 8 new ones.
  • Fix: the codex/gemini installers never copied harness/codex/_shared/, leaving ../_shared/*.md references dangling in those targets. Now copied.

Docs

  • CLAUDE.md skill registry and README.md updated to the full loop (15 core skills).

How to test

# Fresh install, all four targets
mkdir -p /tmp/t &&fortin claude codex gemini hermes;do ./install.sh typescript /tmp/t --target $t --dry-run;done# Worktree flow (in any installed project)
.claude/bin/devkit-worktree.sh add ../feature-x -b feat/x
.claude/bin/devkit-worktree.sh list

Checklist

  • All 4 install targets dry-run clean (claude/codex/gemini/hermes)
  • Worktree helper verified end-to-end against a real git worktree
  • Common/Codex skill parity; frontmatter + reference links validated
  • Merged latest master (hermes target) — conflicts in install.sh/README.md resolved
  • Tests pass (n/a — docs/shell harness, no test suite)

…+ worktree support
Fill out dat-devkit into a full engineering loop (align → specify → decompose →
execute → verify → ship → maintain → triage → hand off), add the codex/gemini
skill target, and make the harness work inside git worktrees.
Workflow skills (Claude + Codex), inspired by mattpocock/skills:
- /grill relentless one-question-at-a-time alignment interview
- /prd synthesize conversation into .devkit/prd.md (optional GitHub issue)
- /to-issues decompose a plan into vertical-slice GitHub issues (AFK/HITL)
- /zoom-out map unfamiliar code a layer up; persist terms to CONTEXT.md
- /improve-architecture find shallow-module friction, propose deepening + ADRs
- /triage GitHub issue triage state machine with agent briefs
- /handoff compact a session into a temp-dir handoff doc
- /worktree create a git worktree and install the harness into it
Worktree support:
- bin/devkit-worktree.sh — add/sync/sync-all/list; resolves the main checkout via
git-common-dir and syncs .claude/ with correct excludes (worktrees/, .devkit/ state)
- rewrite rules/worktree.md around the helper (was a manual rsync)
Shared CONTEXT.md glossary convention (_shared/context-doc.md) tying the alignment
skills to the project's domain language.
install.sh: codex/gemini installers now also copy _shared/ (fixes dangling
../_shared/*.md references in those targets).
Docs: CLAUDE.md skill registry + README updated to the full loop.
…rkflow-skills
# Conflicts:
#	README.md
#	install.sh
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants

@datj9@datnguyen-ringkas
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Remove or un-stick sticky/fixed headers that block content\n(function() {\n function unstick() {\n document.querySelectorAll('header, nav, [role=\"banner\"], .header, .navbar, .sticky, .fixed-top, [style*=\"position: fixed\"], [style*=\"position:sticky\"]').forEach(function(el) {\n if (el.style.position === 'fixed' || el.style.position === 'sticky' || \n getComputedStyle(el).position === 'fixed' || getComputedStyle(el).position === 'sticky') {\n el.style.position = 'static';\n el.style.top = 'auto';\n el.style.zIndex = 'auto';\n }\n });\n }\n \n unstick();\n \n var observer = new MutationObserver(unstick);\n observer.observe(document.body, { childList: true, subtree: true, attributes: true, attributeFilter: ['style', 'class'] });\n})();", "Kill Sticky Headers"); } } catch(__e) { console.warn('[Userscript:Kill Sticky Headers]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

feat(skills): full engineering-workflow skill set + codex target + worktree support - #2

Open
datj9 wants to merge 2 commits into
masterfrom
feat/engineering-workflow-skills
Open

feat(skills): full engineering-workflow skill set + codex target + worktree support#2
datj9 wants to merge 2 commits into
masterfrom
feat/engineering-workflow-skills

Conversation

@datj9

Copy link
Copy Markdown
Owner

What changed

Fills dat-devkit out into a complete engineering loop and makes the harness work inside git worktrees. Inspired by mattpocock/skills, adapted to this kit's GitHub-native, agent-orchestrated conventions.

The loop is now: align → specify → decompose → execute → verify → ship → maintain → triage → hand off. Previously the kit only covered execute→ship.

New workflow skills (Claude + Codex mirrors)

SkillRole
/grillRelentless one-question-at-a-time alignment interview before any code (fixes agent misalignment)
/prdSynthesize the conversation into .devkit/prd.md; optionally open as a GitHub issue
/to-issuesDecompose a PRD/plan into thin vertical-slice GitHub issues (AFK/HITL, dependency-ordered)
/zoom-outMap an unfamiliar area a layer up (uses CodeGraph); persist durable terms to CONTEXT.md
/improve-architectureFind shallow-module / ball-of-mud friction, propose deepening refactors + ADRs
/triageMove GitHub issues through a triage state machine with agent briefs
/handoffCompact a session into a temp-dir handoff doc for a fresh agent
/worktreeCreate a git worktree and install the harness into it

Also adds the shared CONTEXT.md glossary convention (_shared/context-doc.md) so specs/issues/reviews speak the project's domain language.

Worktree support

  • New bin/devkit-worktree.shadd / sync / sync-all / list. Resolves the main checkout via git rev-parse --git-common-dir and syncs .claude/ into a worktree with correct excludes (worktrees/, per-worktree .devkit/ state).
  • Rewrote rules/worktree.md around the helper (was a fragile manual rsync).
  • Hooks/statusline already use git rev-parse --git-dir, so they resolve through a worktree's .gitfile; workflow state stays isolated per worktree.

Codex/Gemini target

  • Full codex skill mirrors for the existing 7 skills + the 8 new ones.
  • Fix: the codex/gemini installers never copied harness/codex/_shared/, leaving ../_shared/*.md references dangling in those targets. Now copied.

Docs

  • CLAUDE.md skill registry and README.md updated to the full loop (15 core skills).

How to test

# Fresh install, all four targets
mkdir -p /tmp/t &&fortin claude codex gemini hermes;do ./install.sh typescript /tmp/t --target $t --dry-run;done# Worktree flow (in any installed project)
.claude/bin/devkit-worktree.sh add ../feature-x -b feat/x
.claude/bin/devkit-worktree.sh list

Checklist

  • All 4 install targets dry-run clean (claude/codex/gemini/hermes)
  • Worktree helper verified end-to-end against a real git worktree
  • Common/Codex skill parity; frontmatter + reference links validated
  • Merged latest master (hermes target) — conflicts in install.sh/README.md resolved
  • Tests pass (n/a — docs/shell harness, no test suite)

…+ worktree support
Fill out dat-devkit into a full engineering loop (align → specify → decompose →
execute → verify → ship → maintain → triage → hand off), add the codex/gemini
skill target, and make the harness work inside git worktrees.
Workflow skills (Claude + Codex), inspired by mattpocock/skills:
- /grill relentless one-question-at-a-time alignment interview
- /prd synthesize conversation into .devkit/prd.md (optional GitHub issue)
- /to-issues decompose a plan into vertical-slice GitHub issues (AFK/HITL)
- /zoom-out map unfamiliar code a layer up; persist terms to CONTEXT.md
- /improve-architecture find shallow-module friction, propose deepening + ADRs
- /triage GitHub issue triage state machine with agent briefs
- /handoff compact a session into a temp-dir handoff doc
- /worktree create a git worktree and install the harness into it
Worktree support:
- bin/devkit-worktree.sh — add/sync/sync-all/list; resolves the main checkout via
git-common-dir and syncs .claude/ with correct excludes (worktrees/, .devkit/ state)
- rewrite rules/worktree.md around the helper (was a manual rsync)
Shared CONTEXT.md glossary convention (_shared/context-doc.md) tying the alignment
skills to the project's domain language.
install.sh: codex/gemini installers now also copy _shared/ (fixes dangling
../_shared/*.md references in those targets).
Docs: CLAUDE.md skill registry + README updated to the full loop.
…rkflow-skills
# Conflicts:
#	README.md
#	install.sh
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants

@datj9@datnguyen-ringkas
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Universal Dark Mode - works on any site\n(function() {\n var enabled = true;\n \n function applyDarkMode() {\n if (!enabled) return;\n \n // Create style element if it doesn't exist\n var style = document.getElementById('universal-dark-mode-style');\n if (!style) {\n style = document.createElement('style');\n style.id = 'universal-dark-mode-style';\n document.head.appendChild(style);\n }\n \n // Dark mode CSS - inverts colors but preserves images/video\n style.textContent = '\n /* Invert everything except media */\n html {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #1a1a2e !important;\n }\n \n /* Restore images, videos, iframes, canvas */\n img, video, iframe, canvas, svg, picture, [style*=\"background-image\"] {\n filter: invert(1) hue-rotate(180deg) !important;\n }\n \n /* Preserve specific elements that should not be inverted */\n .no-dark-mode, .no-dark-mode *,\n [data-theme=\"light\"], [data-theme=\"light\"],\n .ace_editor, .ace_editor *,\n .CodeMirror, .CodeMirror *,\n .monaco-editor, .monaco-editor *,\n .markdown-body pre, .markdown-body pre *,\n .highlight, .highlight *,\n pre code, pre code * {\n filter: none !important;\n }\n \n /* Fix common UI elements */\n .modal, .popup, .dropdown-menu, .tooltip, .popover {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #2d2d44 !important;\n border-color: #444 !important;\n }\n \n /* Scrollbars */\n ::-webkit-scrollbar { background: #1a1a2e !important; }\n ::-webkit-scrollbar-thumb { background: #444 !important; }\n ::-webkit-scrollbar-thumb:hover { background: #555 !important; }\n \n /* Selection */\n ::selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ::-moz-selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ';\n }\n \n function removeDarkMode() {\n var style = document.getElementById('universal-dark-mode-style');\n if (style) style.remove();\n }\n \n // Toggle with Alt+Shift+D\n document.addEventListener('keydown', function(e) {\n if (e.altKey && e.shiftKey && e.key === 'D') {\n e.preventDefault();\n enabled = !enabled;\n if (enabled) {\n applyDarkMode();\n console.log('[Universal Dark Mode] Enabled');\n } else {\n removeDarkMode();\n console.log('[Universal Dark Mode] Disabled');\n }\n }\n });\n \n // Apply on load\n applyDarkMode();\n \n // Re-apply on dynamic content\n var observer = new MutationObserver(function(mutations) {\n if (enabled && !document.getElementById('universal-dark-mode-style')) {\n applyDarkMode();\n }\n });\n observer.observe(document.head, { childList: true });\n \n console.log('[Universal Dark Mode] Loaded - Press Alt+Shift+D to toggle');\n})();", "Universal Dark Mode"); } } catch(__e) { console.warn('[Userscript:Universal Dark Mode]', __e); } })(); })();
Skip to content

feat(skills): full engineering-workflow skill set + codex target + worktree support - #2

Open
datj9 wants to merge 2 commits into
masterfrom
feat/engineering-workflow-skills
Open

feat(skills): full engineering-workflow skill set + codex target + worktree support#2
datj9 wants to merge 2 commits into
masterfrom
feat/engineering-workflow-skills

Conversation

@datj9

Copy link
Copy Markdown
Owner

What changed

Fills dat-devkit out into a complete engineering loop and makes the harness work inside git worktrees. Inspired by mattpocock/skills, adapted to this kit's GitHub-native, agent-orchestrated conventions.

The loop is now: align → specify → decompose → execute → verify → ship → maintain → triage → hand off. Previously the kit only covered execute→ship.

New workflow skills (Claude + Codex mirrors)

SkillRole
/grillRelentless one-question-at-a-time alignment interview before any code (fixes agent misalignment)
/prdSynthesize the conversation into .devkit/prd.md; optionally open as a GitHub issue
/to-issuesDecompose a PRD/plan into thin vertical-slice GitHub issues (AFK/HITL, dependency-ordered)
/zoom-outMap an unfamiliar area a layer up (uses CodeGraph); persist durable terms to CONTEXT.md
/improve-architectureFind shallow-module / ball-of-mud friction, propose deepening refactors + ADRs
/triageMove GitHub issues through a triage state machine with agent briefs
/handoffCompact a session into a temp-dir handoff doc for a fresh agent
/worktreeCreate a git worktree and install the harness into it

Also adds the shared CONTEXT.md glossary convention (_shared/context-doc.md) so specs/issues/reviews speak the project's domain language.

Worktree support

  • New bin/devkit-worktree.shadd / sync / sync-all / list. Resolves the main checkout via git rev-parse --git-common-dir and syncs .claude/ into a worktree with correct excludes (worktrees/, per-worktree .devkit/ state).
  • Rewrote rules/worktree.md around the helper (was a fragile manual rsync).
  • Hooks/statusline already use git rev-parse --git-dir, so they resolve through a worktree's .gitfile; workflow state stays isolated per worktree.

Codex/Gemini target

  • Full codex skill mirrors for the existing 7 skills + the 8 new ones.
  • Fix: the codex/gemini installers never copied harness/codex/_shared/, leaving ../_shared/*.md references dangling in those targets. Now copied.

Docs

  • CLAUDE.md skill registry and README.md updated to the full loop (15 core skills).

How to test

# Fresh install, all four targets
mkdir -p /tmp/t &&fortin claude codex gemini hermes;do ./install.sh typescript /tmp/t --target $t --dry-run;done# Worktree flow (in any installed project)
.claude/bin/devkit-worktree.sh add ../feature-x -b feat/x
.claude/bin/devkit-worktree.sh list

Checklist

  • All 4 install targets dry-run clean (claude/codex/gemini/hermes)
  • Worktree helper verified end-to-end against a real git worktree
  • Common/Codex skill parity; frontmatter + reference links validated
  • Merged latest master (hermes target) — conflicts in install.sh/README.md resolved
  • Tests pass (n/a — docs/shell harness, no test suite)

…+ worktree support
Fill out dat-devkit into a full engineering loop (align → specify → decompose →
execute → verify → ship → maintain → triage → hand off), add the codex/gemini
skill target, and make the harness work inside git worktrees.
Workflow skills (Claude + Codex), inspired by mattpocock/skills:
- /grill relentless one-question-at-a-time alignment interview
- /prd synthesize conversation into .devkit/prd.md (optional GitHub issue)
- /to-issues decompose a plan into vertical-slice GitHub issues (AFK/HITL)
- /zoom-out map unfamiliar code a layer up; persist terms to CONTEXT.md
- /improve-architecture find shallow-module friction, propose deepening + ADRs
- /triage GitHub issue triage state machine with agent briefs
- /handoff compact a session into a temp-dir handoff doc
- /worktree create a git worktree and install the harness into it
Worktree support:
- bin/devkit-worktree.sh — add/sync/sync-all/list; resolves the main checkout via
git-common-dir and syncs .claude/ with correct excludes (worktrees/, .devkit/ state)
- rewrite rules/worktree.md around the helper (was a manual rsync)
Shared CONTEXT.md glossary convention (_shared/context-doc.md) tying the alignment
skills to the project's domain language.
install.sh: codex/gemini installers now also copy _shared/ (fixes dangling
../_shared/*.md references in those targets).
Docs: CLAUDE.md skill registry + README updated to the full loop.
…rkflow-skills
# Conflicts:
#	README.md
#	install.sh
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants

@datj9@datnguyen-ringkas