plugins/teamcraft-jcg/skills/tech-decisions/SKILL.md
Capture the technology stack and key decisions for this project. Reads the PRD from Confluence, surfaces matching team conventions as context, and records what the team has decided to use and why. Simple format — what was decided and why, not a full ADR ceremony. Stores in Confluence.
npx skillsauth add codingthefuturewithai/claude-code-primitives teamcraft-jcg:tech-decisionsInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Produce a clear record of what technologies this project uses and the key decisions that shaped its technical direction. Format: what was decided, why, and any caveats. This becomes the single source of truth that sprint planning and issue creation reference throughout the project.
This skill captures what the team chose and why — not requirements (that is capture-requirements' domain) and not how to implement with the chosen stack (that belongs in code, comments, or the conventions knowledge base). If a conversation drifts into feature requirements or implementation how-tos, note it and redirect.
Load the PRD — it provides the requirements and constraints that technology decisions must satisfy. If a Confluence page URL or ID was passed as an argument, load it with mcp__sooperset-mcp-atlassian__confluence_get_page directly. If the page ID is in .teamcraft/project.md, use it directly. Otherwise, ask the user if they can point at the PRD in Confluence before searching. Only use mcp__sooperset-mcp-atlassian__confluence_search if they cannot point at it directly.
Also ask the user if they can point at any team convention documents in Confluence — documents that describe how this team builds software. If they can, load them with mcp__sooperset-mcp-atlassian__confluence_get_page using the page ID or URL. If they cannot, use mcp__sooperset-mcp-atlassian__confluence_search to find them — search results include the page ID, which you then pass to mcp__sooperset-mcp-atlassian__confluence_get_page. Convention documents might be named by team, client, technology, or practice area.
Conventions are context, not constraints — the user decides whether this project follows them. If a convention clearly answers a technology question, skip asking it, but capture any deviations and the reasons for them.
Have a focused conversation about the key technical decisions for this project. Focus on decisions that shape implementation — things an engineer picking up an issue needs to know. Cover what's genuinely relevant; not every area applies to every project.
Areas to consider: language and versions, frameworks, data persistence, caching and queues, infrastructure and deployment, architectural approach, key dependencies, authentication — and anything else that materially shapes the codebase.
See references/example-tech-decisions.md for what a well-formed decisions document looks like.
Show the complete document for review. Do not store until the user confirms. Ask the user which Confluence space to use — if they have a PRD already, suggest the same space as a natural default but let them decide. Use mcp__sooperset-mcp-atlassian__confluence_search to surface available spaces if needed. Once the space is confirmed, use mcp__sooperset-mcp-atlassian__confluence_get_page_children to browse its structure and recommend a specific parent page location based on what already exists — if no suitable parent exists, recommend creating one. Confirm the location before creating with mcp__sooperset-mcp-atlassian__confluence_create_page. If the document already exists, update it with mcp__sooperset-mcp-atlassian__confluence_update_page using the existing page ID. Record the Confluence page ID and URL.
Share the Confluence page URL and page ID. Pass this URL to your developer — they will record it in the project manifest alongside the PRD URL and Jira project details. With requirements and technology decisions settled, the natural next step is sprint planning — taking the PRD and tech decisions into Jira and creating the first set of backlog issues ready for sprint assignment.
tools
Capture feedback about Teamcraft itself and turn it into a well-structured GitHub issue on the plugin's repo. Vets whether the problem is really a Teamcraft skill defect (vs. misuse, the harness, or the user's own project) by root-causing against the actual skill source, then helps the developer decide whether to file and publishes via the GitHub CLI. Use when the user says 'improve teamcraft', 'a teamcraft skill did the wrong thing', 'file feedback on teamcraft', 'report a teamcraft bug', 'I have an idea to make teamcraft better', or when a Teamcraft skill clearly misbehaved and the user wants that captured upstream.
tools
Learn the Teamcraft plugin itself — how its workflow, skills, and artifacts fit together. A guided overview for a human getting started, or a system map for Claude orienting itself to how Teamcraft works before working in a Teamcraft repo. Teaching only; needs no project or environment access. Use when someone wants to understand Teamcraft (the tool, not their specific project), asks "how does Teamcraft work", "explain the workflow", "which skill do I use for X", or when Claude needs the big picture of how the skills hook together.
tools
--- name: teamcraft:work-board description: Launch (or re-launch) the user's live, multi-project work board. The dashboard is a single HTML file copied to a stable user-side location at ~/.claude/teamcraft-board.html and opened in the user's default browser. It has two views via a header toggle — a drag-and-drop Kanban Board and a live Status tab (analytics: work by status, throughput, cycle time, aging, blocked chains, recomputed on every poll). Each project is added via a header dropdown; the
development
Run pre-PR reviews (code health, security, acceptance criteria), address findings, and submit the PR for review. Ends when the PR is ready and CI has passed. Use when implementation is done and ready for review, or when the user says "I'm done coding", "validate this", "ready for review", "submit this for review", "run the pre-PR reviews", or "prepare this for review".