ワンクリックで
tech-stack
Define the technical stack and architecture for a project. Interactive session with the Architect agent.
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
メニュー
Define the technical stack and architecture for a project. Interactive session with the Architect agent.
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
SOC 職業分類に基づく
| name | tech-stack |
| description | Define the technical stack and architecture for a project. Interactive session with the Architect agent. |
| triggers | ["/tech-stack","define tech stack","définir la stack","choose the stack","choisir la stack","architecture discussion","discussion architecture"] |
| tools | Read, Write, Grep, Glob, Bash, Task |
| context | fork |
Interactive session to define the technical stack and key architecture decisions.
/tech-stack # Creates memory-bank/tech-stack.md
memory-bank/tech-stack.mdWhen this skill is invoked:
Check for existing context:
Read memory-bank/brief.md if it exists
Read memory-bank/prd.md if it exists
Read CLAUDE.md for user preferences (already includes stack preferences)
Read package.json if it exists (brownfield project)
Spawn the Architect agent:
Use the Task tool with subagent_type: "architect" (custom agent).
Prompt for the agent:
You are defining the technical stack for this project.
Existing context:
- Brief: {summary of brief.md if exists}
- PRD: {summary of prd.md if exists}
- User preferences from CLAUDE.md: Next.js, Tailwind, shadcn/ui, Supabase, pnpm
- Existing package.json: {summary if exists - brownfield detection}
Your goal:
1. Understand technical requirements from the PRD
2. Ask about constraints (hosting, budget, team, integrations)
3. Propose a stack that fits the requirements
4. Document key architecture decisions (ADRs)
5. When ready, create memory-bank/tech-stack.md
If this is a brownfield project (package.json exists), focus on matching existing patterns.
Start by summarizing the technical needs you see from the PRD, then ask about any constraints.
User's initial input: {user's message if any}
Let the agent run the interactive session
Output: memory-bank/tech-stack.md
memory-bank/
└── tech-stack.md
The agent should create a document following this structure:
# Tech Stack
## Overview
{One paragraph rationale for the overall approach}
## Frontend
| Layer | Choice | Rationale |
|-------|--------|-----------|
| Framework | Next.js 14+ | App Router, RSC, Server Actions |
| Styling | Tailwind CSS + shadcn/ui | Rapid development, consistent design |
| State | Zustand | Simple, performant global state |
| Forms | React Hook Form + Zod | Type-safe validation |
## Backend
| Layer | Choice | Rationale |
|-------|--------|-----------|
| API | Next.js Server Actions | Colocation, type safety |
| Database | Supabase (PostgreSQL) | Auth + DB + Realtime + Storage |
| Auth | Supabase Auth | Built-in, secure, multiple providers |
| Storage | Supabase Storage | Integrated with auth |
## Infrastructure
| Layer | Choice | Rationale |
|-------|--------|-----------|
| Hosting | Vercel | Native Next.js support |
| CI/CD | GitHub Actions | Standard, integrated |
| Monitoring | Vercel Analytics | Built-in |
## Key Libraries
| Purpose | Library | Version |
|---------|---------|---------|
| Icons | lucide-react | latest |
| Date handling | date-fns | latest |
| {purpose} | {library} | {version} |
## Architecture Decisions
### ADR-1: {Decision Title}
- **Context**: {Why this decision was needed}
- **Decision**: {What we decided}
- **Alternatives considered**: {What else we looked at}
- **Consequences**: {Trade-offs we're accepting}
### ADR-2: {Decision Title}
{Same format}
## Data Model (High-Level)
### Core Entities
- **{Entity}**: {description, key fields}
- **{Entity}**: {description, key fields}
### Relationships
- {Entity A} → {Entity B}: {relationship type, description}
## Security Considerations
- Authentication: {approach}
- Authorization: {RLS, middleware, etc.}
- Data validation: {where and how}
## Performance Considerations
- Caching strategy: {approach}
- Image optimization: {approach}
- Bundle size: {considerations}
When no specific requirements contradict, default to:
After creating the tech-stack, suggest:
"Tech stack saved to
memory-bank/tech-stack.md. Run/implementation-planto create the development plan."
Apply standard development permissions to the current project by creating .claude/settings.local.json with pre-approved tools and bash commands. Use when setting up a new project or when the user wants to configure Claude permissions.
Automatically loaded at session start. Maps tasks to the right skill. Do not invoke manually.
Manage Resend email platform via CLI — send emails, manage contacts, broadcasts, templates, segments, domains, webhooks, and more. Use when the user wants to send emails, manage contacts/segments, create broadcasts, manage templates, check domain status, or any Resend-related task. Trigger words: "resend", "send email", "broadcast", "contacts", "email template", "domain verify", "webhook".
Explore and validate product ideas through structured brainstorming. Creates a product brief.
Stage all changes, create a commit with auto-generated or custom message, and push to current branch. Use when the user says "commit", "push", "save changes", or wants to finalize their work.
Complete implementation workflow for a task - understand context, plan, implement, validate, review, and commit. Use when the user wants to implement a feature, fix a bug, or complete a specific development task.