Repo-aware AI coding guidelines assistant. Wizard or Repo Scan — your context, ready.
- Generates AI‑ready files for your project: Copilot instructions, Cursor rules, and agent guidance.
- Works two ways: start from scratch with a guided wizard or scan a public GitHub repository to prefill answers.
- Surfaces examples, trade‑offs, tags, and authoritative docs so choices are transparent and revisitable.
- New Project (Wizard)
- Start from curated stacks or go fully custom.
- Answer focused questions (general, architecture, performance, security, commits, etc.).
- Apply smart defaults when unsure; you can edit everything later.
- Existing Project (Repo Scan)
- Paste an
owner/repoor full URL. DevContext detects languages, frameworks, tooling, tests, and conventions. - The wizard is prefilled with detected signals; you only confirm or fill gaps.
- Paste an
See the Scan → Wizard pipeline in docs/scan-flow.md.
- Languages and frameworks (e.g., Next.js, React, Vue, Python)
- Tooling and testing (ESLint, Prettier, TypeScript; Jest, Vitest, Playwright, Cypress, pytest)
- Structure (src/, components/, tests/, monorepo/workspaces) and package manager
- Routing, styling, state management, data fetching
- Auth, validation, logging, CI/CD, code quality tools
- Editor and naming conventions; commit message style
The detected summary is converted into wizard answers and ultimately into tailored instruction files.
copilot-instructions.md(fromfile-templates/copilot-instructions-template.md)agents.md(fromfile-templates/agents-template.md).cursor/rules(fromfile-templates/cursor-rules-template.json)
Templates are mapped via lib/template-config.ts and populated by lib/template-render.ts.
git clone https://github.com/spivx/devcontext.git
cd devcontext
npm install
# Set your GitHub token for repo scans (required)
cp .env.local.example .env.local # if present, otherwise create it
echo "GITHUB_TOKEN=YOUR_TOKEN_HERE" >> .env.local
npm run devOpen the printed local URL. On the landing page you can:
- Launch the wizard (Start from stacks or custom)
- Scan a public GitHub repo (prefills the wizard)
Notes:
- Scanning requires a GitHub personal access token (
GITHUB_TOKEN) to avoid low rate limits. - Only public repositories are supported.
- Unit tests (Vitest):
npm run test - E2E tests (Playwright):
npm run test:e2e - Validate question IDs:
npm run validate:ids
- All selectable answers are defined in
data/*.jsonand stack‑specific files underdata/questions/<stack>.json. - Each answer can include
value,label,icon,example,infoLines(from pros/cons),tags,isDefault,disabled,disabledLabel, anddocs. - Disabled choices show as “Soon” and are non‑interactive.
- Icons come from
simple-iconsand auto‑adjust for dark mode readability.
- Tooltips open from the info icon and remain interactive, with External Link icons to docs.
- You can apply recommended defaults per question to keep momentum.
- A completion summary highlights answered items and remaining gaps.
- Add new stacks by updating
data/stacks.json, addingdata/questions/<stack>.json, and (optionally)conventions/<stack>.json. - When adding logic: move shared TypeScript types into
types/(e.g.,types/wizard.ts). - Extract reusable effect logic into hooks under
hooks/and reuse across components. - Keep PRs focused; include docs or examples where helpful.
MIT — see LICENSE.
