诊断生产力系统反复失效的根因,给出最小干预——容量测算、瓶颈定位、可靠的本地记录。
编程
monorepo-scaffold
试用Initialize a brand-new monorepo project in an empty (or near-empty) folder. Use when the user wants to "set up a monorepo", "scaffold a project", or "bootstrap a repo with multiple packages/apps".
它能做什么
A monorepo is a long-lived piece of infrastructure. The workspace tool, package manager, folder layout, and shared config choices made on day one are expensive to change later — teams live with them for years. Because of that, this skill treats scaffolding as a **design decision that deserves a rea…
技能文档
Monorepo Scaffold
Why this skill exists
A monorepo is a long-lived piece of infrastructure. The workspace tool, package manager, folder layout, and shared config choices made on day one are expensive to change later — teams live with them for years. Because of that, this skill treats scaffolding as a design decision that deserves a real interview, not a quick default. Guessing the stack and generating something generic is worse than useless here: it produces a skeleton the user has to tear apart and redo, which is slower than if Claude had just asked.
So the rule is simple: never scaffold before the interview is genuinely complete. A partial answer ("just use TypeScript") is not complete — dig into the specifics (which package manager, which orchestrator, which apps). It is fine, and expected, for the interview to feel thorough. That's the point.
Overall flow
- Confirm the target folder is safe to scaffold into (see "Safety check" below).
- Run the full interview (see "The interview" below). Do this in a conversational, adaptive way — don't just dump a giant questionnaire. Ask in focused batches, use the
ask_user_input_v0tool where available (single-select/multi-select buttons are much faster for the user than typing), and adapt follow-ups to earlier answers. - Summarize the plan back to the user as a short spec (project name, apps/packages list, stack per package, orchestrator, CI, versioning strategy) and get explicit confirmation before writing files. This is cheap insurance against a wasted scaffold.
- Generate the monorepo following the relevant recipe in
references/stack-recipes.md, usingreferences/config-templates.mdfor boilerplate config file contents. - Verify the scaffold: run the package manager's install command, run the build/lint/test scripts if they exist, and confirm the workspace tool actually recognizes all packages (e.g.
turbo run build --dry,nx show projects,pnpm -r list). - Report back with the folder tree, how to install dependencies, how to run each app, and a short "next steps" list (e.g. "add your first real feature to
apps/web", "set up secrets in CI").
Safety check
Before touching the filesystem:
- Confirm the target directory exists and list its contents. If it's not empty, stop and tell the user what's already there, then ask whether to proceed (merge into existing files), scaffold into a subfolder instead, or abort. Never silently overwrite existing files.
- Confirm whether the user wants git initialized here, or whether this folder is already inside a git repo (check for a
.gitdirectory, including in parent directories) — don't rungit initinside an existing repo without asking.
The interview
Treat this as a structured but human conversation. Group questions into rounds so the user isn't overwhelmed by twenty questions at once — three or four short rounds work better than one wall of text. Skip a question only if the user has already answered it earlier in the conversation. Never silently assume an answer to a question in the "always ask" list below.
Read references/interview-guide.md for the full question bank, good follow-up probes, and rationale for why each topic matters. At minimum, the following must be resolved by the end of the interview — treat these as required, not optional:
- Project identity — project/repo name, one-line purpose, intended scale (a weekend project vs. something meant to scale to a team of 50 — this changes how much tooling rigor is worth setting up).
- Package/app inventory — the concrete list of apps, services, and shared packages that will live in the repo on day one (e.g.
apps/web,apps/api,packages/ui,packages/config). Push for specifics; "a frontend and a backend" is a start, not an answer — get names and what each one is responsible for. - Language & framework per package — this can differ per package (e.g. a Next.js web app, a Go API, a shared TypeScript types package). Never assume everything is the same language just because the first package is.
- Package manager & monorepo orchestrator — for JS/TS: npm workspaces, pnpm workspaces, Yarn (classic or Berry) workspaces, or Bun workspaces, plus whether to layer Turborepo, Nx, Lerna, or Rush on top (or none). For Python: uv workspace, Poetry with path dependencies, or Rye. For Go:
go.work. For Rust: Cargo workspace. For polyglot repos: how the pieces coexist (often plain folder convention plus a task runner likejust,make, or Turborepo's generic task pipeline). Explain trade-offs briefly rather than just listing options — the user may not know these tools. - Shared tooling — linting/formatting (ESLint+Prettier vs. Biome vs. language-native equivalents), TypeScript config strategy (shared base
tsconfig.jsonwith per-package extends), testing framework(s), pre-commit hooks (Husky+lint-staged,pre-commit,lefthook). - CI/CD — which provider (GitHub Actions is the sane default unless told otherwise), what the pipeline should do (lint, typecheck, test, build — and only run tasks affected by a given change if the orchestrator supports it), and whether deployment is in scope yet or comes later.
- Versioning & release strategy — only relevant if any package will be published (npm, PyPI, etc.) or has independent release cadence. Options include Changesets, semantic-release, or "not needed yet." Don't over-engineer this for an app-only repo with nothing to publish.
- Environment & secrets strategy — per-package
.envfiles vs. a root-level shared one, whether to add runtime env validation (e.g.zod-based env schemas,envsafe), and whether.env.examplefiles are wanted. - Containerization — Docker per app, a root
docker-compose.ymlfor local dev, or skip entirely for now. - License and documentation depth — license choice (MIT is the common default for open work, but ask), and how much scaffolding docs to generate (a solid root README is always included; ask before adding CONTRIBUTING.md, ADRs, or a docs site).
Also worth surfacing, but fine to default sensibly if the user has no opinion (say what you're defaulting to, don't just silently pick): Node/runtime version pinning (.nvmrc, engines field, or Volta/mise), commit message convention (Conventional Commits + commitlint), and editor consistency (.editorconfig).
Do not let the interview become a stalling tactic — once the required items above are resolved, move to confirmation and scaffolding. Overkill means thorough, not endless.
Generating the scaffold
Once the plan is confirmed:
- Open
references/stack-recipes.mdand find the recipe matching the chosen package manager/orchestrator combination. If the combination isn't covered exactly (e.g. an unusual polyglot mix), use the closest recipe as a base and adapt — explain the adaptation to the user. - Use
references/config-templates.mdfor the actual contents of common files (rootpackage.json,turbo.json/nx.json, basetsconfig.json,.eslintrc/biome.json,.gitignore, GitHub Actions workflow,.editorconfig,.nvmrc, Changesets config, Dockerfiles,docker-compose.yml) so output is consistent and doesn't need to be reinvented per run. - Build the actual folder tree and files using the sandbox's file tools — don't just describe the structure, create it for real.
- Every app/package gets its own minimal-but-real starter (a working "hello world" that actually runs), not an empty folder — an empty
apps/web/with nopackage.jsonisn't a scaffold, it's a TODO. - Wire up root-level scripts so the primary commands work immediately: install, dev (run everything relevant), build, lint, test. These should be one command each from the repo root.
- Initialize git (if agreed in the safety check) with a sensible first commit and a
.gitignorethat actually matches the stack (not a generic catch-all).
Verifying the scaffold
Before declaring done, actually prove it works rather than assuming the generated config is correct:
- Run the install command for the chosen package manager.
- Run whatever "list packages"/"show projects" command the orchestrator provides, and confirm every package the user asked for shows up.
- Run lint, typecheck, and test scripts if configured, and fix any issue caused by the scaffold itself (not the user's future code).
- If a dev server was set up, at least confirm it starts without crashing (then stop it — don't leave a long-running process hanging).
If the sandbox's network access can't reach the package registry needed (npm, PyPI, crates.io, etc.), say so plainly, still generate every file, and tell the user exactly which command to run locally to finish installing.
Final report
Close with, in this order:
- The folder tree (a real tree, not prose).
- Exact commands to install and run things.
- A short list of the concrete choices made (orchestrator, package manager, CI provider) so the user has a record.
- Sensible "what to do next" pointers — don't pad this, three to five items is plenty.
If a file-delivery tool is available in the current environment (e.g. present_files), zip the generated project and present it; otherwise the files are already on disk in the working directory and the report should say where.
相关技能
把自然语言描述转为结构化 JSON,并由 mcp-diagram-generator MCP 服务生成 Draw.io、Mermaid 或 Excalidraw 图表文件。
在本地磁盘以分类纯 Markdown 文件保存需要长期留存的事实,与智能体内置记忆并存。
通过托管的 OAuth GraphQL 接口查询与管理 Linear 的 issue、项目、团队、周期、标签和评论。
通过 6551 REST API 查询 Twitter/X 用户资料、推文、粉丝事件与 KOL 数据。
执行 Git 操作(提交、分支、合并、变基、冲突解决与恢复)时强制套用安全规则。
anjasta-tarigan 的更多技能
浏览全部技能Use this skill whenever the user wants to build, refine, or review a production-grade user interface with Tailwind CSS v4 and shadcn/ui. Triggers include: building a landing page, dashboard, auth flow, admin panel, marketing site, SaaS UI, or any React/Next.js component or page.
Build a complete, production-ready masterplan for a new project/system from scratch (0 to 100%).
Use this skill whenever the user wants to build a production-grade UI with native/vanilla CSS — no Tailwind, no CSS-in-JS, no utility framework. Triggers include: plain Vite + HTML/CSS projects, static sites, simple landing pages, or any project explicitly avoiding a CSS framework.
Execute/build/implement a project strictly from an existing masterplan (the output of masterplan-builder, typically at docs/masterplan/masterplan.md in the project directory). Use whenever the user wants to start or continue actually building a project that has a masterplan — e.g. "build this", "imp
Detects and removes "AI slop" — the formulaic vocabulary, sentence structures, sycophantic openers/closers, over-formatting (bullet walls, bold spam, needless headers), and code anti-patterns (over-engineering, swallowed errors, hallucinated APIs, dead code) that make writing or code read as generic
Audits an existing app's UI for consistency and layout/state-sync bugs (e.g. a sidebar that collapses but siblings don't adjust, or icons disappearing entirely instead of just their labels), responsive breakpoint failures, accessibility gaps, performance issues, and — for chat/workspace apps — messa