audit
무료Run comprehensive code audit for architecture, dead code, and test quality. Use when reviewing overall codebase health, checking for architectural violations, or before marking a feature complete.
한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.
Ticket system and work logs for context anchoring. Use when creating tickets, managing work logs, or anchoring context across multi-step tasks or sessions. Do NOT use for simple patches or single-step tasks.
한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.
설치 방법 보기설치하기 전에 에이전트에게 전달되는 지시 내용을 확인할 수 있습니다.
Purpose: Context anchor to prevent LLM loops during complex work. Colocates all artifacts.
Creating a ticket: Run safeword ticket new <slug> (optionally with --type=patch|task|feature and --title="..."). The CLI mints a 6-char Crockford Base32 ID, creates the folder atomically, and writes a starter ticket.md. Do not scan the tickets directory and pick the next ID yourself — that races between parallel sessions and silently collides across git branches.
Location: .safeword-project/tickets/{ID}/ for new tickets (folder name is the ID alone; slug lives in frontmatter). Pre-existing tickets keep their legacy {numeric-id}-{slug}/ layout and remain reachable by ID — both formats are supported forever.
Folder structure:
.safeword-project/
├── tickets/
│ ├── 7K9M3P/ # New format: folder = Crockford ID, slug in frontmatter
│ │ ├── ticket.md # Ticket definition (frontmatter + work log)
│ │ ├── test-definitions.md # BDD scenarios (Given/When/Then)
│ │ ├── spec.md # Feature spec for epics (optional)
│ │ └── design.md # Design doc for complex features (optional)
│ ├── 080-ticket-id-collision/ # Legacy format: kept readable, never created new
│ │ └── ticket.md
│ └── completed/ # Archive for done tickets
├── learnings/ # Extracted knowledge (gotchas, discoveries)
└── tmp/ # Scratch space (research, logs, etc.)
Artifact Levels:
| Level | Artifacts |
|---|---|
| feature | ticket.md + test-definitions.md (+ spec.md if epic) |
| task | ticket.md with inline tests |
| patch | ticket.md (minimal), existing tests |
Create ticket? Answer IN ORDER, stop at first match:
Examples: "Fix typo" → skip. "Debug slow login" → ticket. "Add OAuth" → ticket.
Minimal structure:
---
id: 7K9M3P
slug: feature-name
status: in_progress
---
# [Title]
**Goal:** [one sentence]
## Work Log
- [timestamp] Started: [task]
- [timestamp] Found: [finding]
- [timestamp] Complete: [result]
Frontmatter values (enum — do not invent new keys or values):
status: in_progress | done | cancelled | superseded | wontfix | blockedphase: intake | define-behavior | scenario-gate | implement | done (see ticket-template.md)Rules:
done without user confirmationPurpose: Scratch pad and working memory during execution. Think hard. Keep notes.
Location: .safeword/logs/{artifact-type}-{slug}.md
Naming convention:
| Working on... | Log file name |
|---|---|
Ticket 7K9M3P (slug: foo) | ticket-7K9M3P-foo.md |
Legacy ticket 080-fix-auth | ticket-080-fix-auth.md |
Spec task-add-cache | spec-task-add-cache.md |
Design doc oauth | design-oauth.md |
One artifact = one log. If log exists, append a new session. Don't spawn multiple logs for the same work.
Create log? Answer IN ORDER, stop at first match:
Think hard behaviors:
Log what helps you stay on track: findings, decisions, hypotheses, blockers, scratch calculations. Use your discretion.
Edge cases:
| Situation | Action |
|---|---|
| Multiple artifacts at once | One log per artifact (don't combine) |
| No clear artifact (exploratory) | Create explore-{topic}.md, convert to proper artifact when scope clarifies |
Use the matching template when ANY trigger fires:
| Trigger | Template |
|---|---|
| Planning new feature scope OR creating feature spec | ./.safeword/templates/feature-spec-template.md |
| Bug, improvement, refactor, or internal task | ./.safeword/templates/task-spec-template.md |
| Need test definitions for a feature OR acceptance criteria | ./.safeword/templates/test-definitions-feature.md |
| Feature spans 3+ components OR needs technical spec | ./.safeword/templates/design-doc-template.md |
| Making decision with long-term impact OR trade-offs | ./.safeword/templates/architecture-template.md |
| Task needs context anchoring | ./.safeword/templates/ticket-template.md |
| Starting execution of a plan, ticket, or spec | ./.safeword/templates/work-log-template.md |
아직 리뷰가 없습니다. 사용해 본 소감을 남겨 주세요.
로그인 없이 쓸 수 있습니다. 사용 후기, 질문, 작동하지 않은 환경 등을 편하게 남겨 주세요.
아직 댓글이 없습니다. 첫 댓글을 남겨 보세요.
Run comprehensive code audit for architecture, dead code, and test quality. Use when reviewing overall codebase health, checking for architectural violations, or before marking a feature complete.
한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.
Behavior-first feature development — use when building new capabilities, continuing feature work, or when work introduces new state or multiple user flows. Discovers desired behavior through examples and scenarios before implementation. Do NOT use for bug fixes, typos, or small isolated changes.
한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.
Use when the user wants to explore options, weigh approaches, or think through uncertainty before committing to a direction. Collaborative brainstorming and rubber ducking — divergence-first thinking partner.
한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.
Kill zombie dev servers and test processes. Use when ports are blocked, processes are hanging, or test runners won't start.
한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.
Root cause debugging before fixes. Use when investigating bugs, diagnosing test failures, troubleshooting unexpected behavior, or when previous fix attempts failed. Enforces investigate-first discipline.
한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.
Extract tacit knowledge through non-obvious microquestions — things only the user knows that can't be found in code, docs, or research. Use when you're about to guess at intent, context, or constraints during SAFEWORD's understanding flow. Also use when user says 'ask me', 'what do you need to know', or when another skill (bdd, brainstorm, debug) needs user context before proceeding. Do NOT use for questions answerable by reading the codebase or searching the web.
한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.