소스 정보
- 저장소
- Dev-Toolbelt/dev-team-agents
- 최근 소스 활동
- 2026년 8월 7일 02:13
- 감지된 SKILL.md 언어
- 영어
- 스타
- 4
- 포크
- 0
설치 방법
기본적으로 소스를 먼저 확인하는 Prompt가 선택됩니다. 직접 명령으로 전환하거나 로컬 사본을 다운로드할 수도 있습니다.
소스 파일 검토
설치 여부를 결정하기 전에 SKILL.md와 SkillsMP에 표시된 보조 파일을 읽어 보세요.
메뉴
기본적으로 소스를 먼저 확인하는 Prompt가 선택됩니다. 직접 명령으로 전환하거나 로컬 사본을 다운로드할 수도 있습니다.
설치 여부를 결정하기 전에 SKILL.md와 SkillsMP에 표시된 보조 파일을 읽어 보세요.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
직접 명령은 검토 Prompt를 거치지 않습니다. 실행하기 전에 소스를 확인하세요.
npx skills add https://github.com/Dev-Toolbelt/dev-team-agents --skill project-context명령은 한 줄로 유지됩니다. 복사하기 전에 가로로 스크롤해 전체 내용을 확인하세요.
로컬 사본을 원하시나요? SkillsMP에서 현재 제공할 수 있는 파일을 다운로드하세요.
SOC 직업 분류 기준
SKILL.md 표시 중
| name | project-context |
| description | Foundational rule — context, coexistence, Plan Mode, language, credentials. |
This is the foundational rule for all agents in dev-team-agents. Read and apply it before acting on any task.
The
dev-team-agentsstandards are the base layer. Any rule, pattern, or convention defined explicitly in the project overrides our base. We provide the floor — the project sets the ceiling.
This means every agent must:
Trigger: [DEVTEAM:FIRST_TIME_SETUP] at the start of a session. Stop immediately — before
loading any other context or answering the original prompt — and load the full guard:
skills/shared/project-context/references/first-time-setup.md
All generated documents, code comments, commit messages, and technical output must be written in English.
This applies to:
docs/development/)docs/backlog/)Exception: if the user explicitly requests a document in another language (e.g., "write this in Portuguese"), honor that request for that specific document only. Default always reverts to English.
All responses directed at the user — including plans presented for approval, explanations, questions, confirmations, and notifications — must use the language in .dev-team-agents/user-data/preferences.json → language field.
Read this value at the start of every session:
python3 -c \
"import json; d=json.load(open('.dev-team-agents/user-data/preferences.json')); print(d.get('language','en'))" \
2>/dev/null || echo "en"
If preferences.json does not exist or is unreadable, default to English and emit a warning notification prompting the user to configure preferences.
This rule applies to: explanations, questions, confirmations, summaries, notifications, and all user-facing text. It does NOT apply to document content, code comments, or commit messages.
When emitting system notifications (context window warnings, missing config, tips), load skills/shared/notifier/SKILL.md to apply the correct DEV TEAM AGENTS format and suppression rules.
Load skills/shared/plan-mode/SKILL.md before executing any non-trivial task. It owns the full when-a-plan-is-required table, the plan format, and the approval protocol — do not restate it here.
This is the canonical map of the project's memory. Every artifact below has exactly one job. Agents route by it; they do not restate it.
| Layer | Artifact | Holds | Lifespan |
|---|---|---|---|
| Structural | docs/project.md, docs/development/*.md | Current state: stack, architecture, standards | Rewritten in place — always describes now |
| Episodic | .dev-team-agents/user-data/session-summary.md | What happened, in order | Decays (rotation policy below) |
| Semantic | docs/wiki/ | What isn't derivable from the code | Permanent; superseded, never deleted |
| Decisional | docs/development/adrs/ | Why a hard-to-reverse choice was made | Permanent and immutable |
| Mechanical | graphify-out/graph.json | Where things are in the code | Regenerated — never hand-written |
Three questions, in order. The first "yes" wins:
A single finding lands in one primary layer. It may be referenced from another; it is never copied into one.
/devteam:learn is the promotion path from episodic to the durable layers, and the Promotion Guard below is what stops the episodic layer from expiring with unpromoted knowledge in it.
Before starting any task, load context in this order (read what exists — skip what doesn't):
1. README.md ← project overview, setup, conventions
2. CLAUDE.md ← Claude-specific rules (highest precedence)
3. docs/project.md ← synthesized project overview; if present, use it to
orient fast before reading individual dev files
4. .dev-team-agents/user-data/session-summary.md ← last session's decisions and next steps;
read the most recent entry (top of file)
5. docs/development/adrs/ ← list ADR files and read any relevant to the task
6. AGENTS.md ← agent-specific instructions for this project
7. .claude/settings.json ← Claude Code configuration
8. .agents/ (directory) ← project-level agent overrides
9. docs/development/ ← architecture, code-standards, tech-stack
10. docs/backlog/ ← current sprint and task context
11. docs/wiki/README.md ← retrieval index; grep it for the task's keywords and
open only the entries that match
When docs/project.md exists, it provides a pre-synthesized orientation (stack, active areas, key constraints) that reduces the need to read multiple raw files from scratch. Read it at step 3, then load only the specific development/ files relevant to the current task instead of reading the entire directory.
After reading project.md, extract the <!-- last-updated: YYYY-MM-DD --> field from line 1. If the date is more than 30 days in the past, include this warning at the top of your first response:
⚠️
project.mdmay be stale (last updated: YYYY-MM-DD). Consider runningsetup-assistantin REFRESH mode to bring it up to date.
When .dev-team-agents/user-data/session-summary.md exists, read only the most recent entry (the topmost ## YYYY-MM-DD block). It captures what was done last session, decisions made, and what comes next — use it to avoid re-asking questions that were already resolved.
When docs/development/adrs/ exists, list its files and read any ADR whose title is relevant to the current task. This prevents contradicting or duplicating past architectural decisions.
When docs/wiki/README.md exists, read that index — and only that index. Derive two or three keywords from the task (domain nouns, component names, the error being chased) and match them against the Keywords column; open only the entries that hit. Never load the wiki directory: the index exists precisely so that context cost stays flat as the wiki grows. An empty match set is a valid result — proceed without opening anything.
This is the wiki's read path. Writing entries is skills/shared/docs-sync/references/wiki-format.md, which owns the index row format the lookup depends on.
Read each file that exists. Combine the information into a unified understanding of the project before acting.
Trivial-task exception: when the task is confined to a single file with a small, well-specified change — the same bar as the Plan Mode "single-line typo fix" exception in skills/shared/plan-mode/SKILL.md — skip this loading order entirely and load only CLAUDE.md plus the target file. Fall back to the full order the moment the task turns out to touch more than one file or needs architectural context.
Trigger: you are about to write or trim .dev-team-agents/user-data/session-summary.md. Load
the full write rules (multi-agent append format, rotation policy, Promotion Guard) before doing so:
skills/shared/project-context/references/session-summary-write-rules.md
Automatically enforced by all agents. Load details on-demand: skills/shared/project-context/references/contradiction-guard.md
Every project gets a wiki at docs/wiki/. Load full protocol: skills/shared/project-context/references/wiki.md
When a conflict exists between our base standard and a project convention:
| Scenario | Rule |
|---|---|
| Project CLAUDE.md defines a code style | Use the project's style |
| Project uses tabs, we recommend spaces | Use tabs |
| Project has no defined convention | Apply our base standard |
| Project explicitly states "do not use X" | Never use X, even if we recommend it |
| Project is ambiguous or silent on a topic | Apply our base standard and note the assumption |
Explicit beats implicit. A project convention must be clearly stated to override a base standard — don't infer overrides from one or two examples.
Trigger: a user asks to modify any file inside .dev-team-agents/. Load the full warning text
before responding: skills/shared/project-context/references/immutability-warning.md
When base standard and project context are both present, produce output that:
"No convention found for X in project context — applying base standard: [rule]"Example: if the project uses PHPDoc for all methods but our base standard says "only when WHY is non-obvious", follow the project — it has an explicit convention.
Load skills/shared/interaction-patterns/SKILL.md before asking the user any question.
The skill defines when and how to use the AskUserQuestion tool (quiz format with Yes/No, multiple-choice, or "Other" for open input) instead of plain text prompts. Apply it to every confirmation, choice, and gate in your workflow.
Load skills/shared/scoped-test-execution/SKILL.md before running any test command.
This binds every agent, not only the test specialists. If your task ends with you invoking a test runner — implementing, fixing, refactoring, reviewing, or validating — you run only the tests covering the code you touched. The project's full suite runs on one signal and one only: the user asking for it in this session.
| Situation | What runs |
|---|---|
| You changed code and want to verify it | Tests covering the change and its direct dependents |
| A scoped test failed | Fix it — a failure never authorizes widening the run |
| The change touches shared code, or the suite is fast | Still scoped. Neither is an escalation signal |
| The request is vague ("make sure nothing broke") | Still scoped. Offer the full run; do not start it |
| The user explicitly asked for the whole suite | Full suite |
| A CI pipeline is executing | Full suite — this rule governs local runs only and never constrains a pipeline |
Load the skill for the blast-radius derivation and the per-stack runner filters. Do not work from this table alone.
Detect and load the appropriate skill when any scanner config is present:
| Detection | Skill to load |
|---|---|
sonar-project.properties, .sonarcloud.properties, or SONAR_TOKEN env var | skills/devops/sonarqube/SKILL.md |
When loaded, the scanner skill governs: quality gate reporting, security hotspot handling, coverage thresholds, and how findings surface in reviews and QA reports.
Detect and load the appropriate skill when the environment signal is present:
| Detection | Skill to load |
|---|---|
docker-compose.yml, docker-compose.override.yml, or compose.yml at the root | skills/devops/docker-dev/SKILL.md |
When loaded, that skill governs the command execution contract: every command runs inside the container, which compose form to use, and the explicit-host exception.
When a task requires accessing a remote environment (staging, production, QA, etc.):
skills/shared/credentials/SKILL.md and follow its instructions.dev-team-agents/user-data/credentials.local.jsonThis applies to SSH, database, HTTP/HTTPS, Docker, Kubernetes, and any other remote access.
.eslintrc, phpcs.xml, .prettierrc, pyproject.toml, etc.)docs/development/What does not count: