Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
File renamed without changes.
1 change: 1 addition & 0 deletions .claude/commands/ai-specialist.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Read `.claude/roles/ai-specialist.md` and adopt the @ai-specialist role for this task: $ARGUMENTS
1 change: 1 addition & 0 deletions .claude/commands/bug-fix.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Read `.claude/workflows/bug-fix.md` and start the bug fix workflow for: $ARGUMENTS
12 changes: 12 additions & 0 deletions .claude/commands/domain.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
Read `.claude/domains/$ARGUMENTS/context.md` and use it as your working context.

After reading, summarize:
1. Key business rules
2. Main entities
3. Available commands and queries
4. API endpoints
5. Related domains

Then confirm you are ready to work on the **$ARGUMENTS** domain.

Available domains: `feed`, `article`, `bookmark`, `newsletter`, `search`, `spotlight`
1 change: 1 addition & 0 deletions .claude/commands/engineer.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Read `.claude/roles/engineer.md` and adopt the @engineer role for this task: $ARGUMENTS
1 change: 1 addition & 0 deletions .claude/commands/frontend.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Read `.claude/roles/frontend.md` and adopt the @frontend role for this task: $ARGUMENTS
39 changes: 39 additions & 0 deletions .claude/commands/hotfix.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
Start an expedited hotfix workflow for the production issue: $ARGUMENTS

This is a HOTFIX — keep changes minimal and focused on the fix only.

## Steps

1. **Create hotfix branch from master**
```bash
git checkout master && git pull
git checkout -b hotfix/$ARGUMENTS
```

2. **Diagnose quickly**
- Check logs: `docker compose logs app | grep -i error`
- Identify the exact file and line causing the issue
- Root cause in one sentence

3. **Minimal fix only**
- Change the least amount of code necessary
- No refactoring, no unrelated improvements
- If the root cause requires a larger fix, implement a safe temporary workaround and create a follow-up task

4. **Regression test**
- Write one test that reproduces the bug and passes after the fix
- Run `make tests-unit`

5. **Commit**
```
fix(domain): [HOTFIX] brief description

Root cause: [one line]
Regression test added.
```

6. **PR and deploy**
- `gh pr create` targeting `master`
- After merge, monitor logs for 10 minutes

Read `.claude/workflows/bug-fix.md` for the full workflow if the issue requires deeper investigation.
1 change: 1 addition & 0 deletions .claude/commands/infra.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Read `.claude/roles/infra.md` and adopt the @infra role for this task: $ARGUMENTS
1 change: 1 addition & 0 deletions .claude/commands/new-feature.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Read `.claude/workflows/new-feature.md` and start the new feature workflow for: $ARGUMENTS
14 changes: 14 additions & 0 deletions .claude/commands/quality.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
Run the full quality check suite and report results.

Execute in order:
1. `make lint` — PHP CS Fixer
2. `make analyse` — PHPStan level 9
3. `make rector` — Rector refactoring check
4. `make tests-unit` — PHPUnit unit tests

For each step that fails, explain:
- What failed and why
- The exact fix needed
- Whether it can be auto-fixed (e.g. `make lint` can auto-fix CS issues)

Context (optional): $ARGUMENTS
1 change: 1 addition & 0 deletions .claude/commands/release.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Read `.claude/workflows/release.md` and start the release workflow for version: $ARGUMENTS
3 changes: 3 additions & 0 deletions .claude/commands/review.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
Read `.claude/roles/reviewer.md` and perform a code review. Context: $ARGUMENTS

If no context is given, review the current git diff: run `git diff HEAD` and `git diff --staged` to get the changes to review.
File renamed without changes.
File renamed without changes.
Original file line number Diff line number Diff line change
Expand Up @@ -8,9 +8,9 @@
## Prerequisites

Before starting any task:
1. Read `shared/architecture.md` for async patterns
2. Read `domains/search/context.md` for vector search specifics
3. Read `domains/newsletter/context.md` for LLM synthesis
1. Read `.claude/shared/architecture.md` for async patterns
2. Read `.claude/domains/search/context.md` for vector search specifics
3. Read `.claude/domains/newsletter/context.md` for LLM synthesis
4. Check existing AI code in `src/Infrastructure/AI/`

---
Expand Down
6 changes: 3 additions & 3 deletions .ai-agents/roles/engineer.md → .claude/roles/engineer.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,9 +8,9 @@
## Prerequisites

Before starting any task:
1. Read `shared/architecture.md` for CQRS and API Platform patterns
2. Read `shared/conventions.md` for naming rules
3. Read relevant `domains/{domain}/context.md`
1. Read `.claude/shared/architecture.md` for CQRS and API Platform patterns
2. Read `.claude/shared/conventions.md` for naming rules
3. Read relevant `.claude/domains/{domain}/context.md`
4. Check existing code in `src/Domain/{Domain}/` for style matching

---
Expand Down
4 changes: 2 additions & 2 deletions .ai-agents/roles/frontend.md → .claude/roles/frontend.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,8 @@
## Prerequisites

Before starting any task:
1. Read `shared/conventions.md` for naming rules
2. Read `shared/boundaries.md` for what you can/cannot do
1. Read `.claude/shared/conventions.md` for naming rules
2. Read `.claude/shared/boundaries.md` for what you can/cannot do
3. Check existing components in `frontend/src/components/`
4. Verify API contracts with @engineer if needed

Expand Down
2 changes: 1 addition & 1 deletion .ai-agents/roles/infra.md → .claude/roles/infra.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
## Prerequisites

Before starting any task:
1. Read `shared/boundaries.md` for approval requirements
1. Read `.claude/shared/boundaries.md` for approval requirements
2. Check current Docker Compose configuration
3. Review existing migrations in `migrations/`
4. Understand current CI/CD pipeline
Expand Down
2 changes: 1 addition & 1 deletion .ai-agents/roles/marketer.md → .claude/roles/marketer.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
## Prerequisites

Before creating content:
1. Read `shared/boundaries.md` for what you cannot do
1. Read `.claude/shared/boundaries.md` for what you cannot do
2. **Read `/docs/MARKETING-STRATEGY.md`** for pricing, communication roadmap, and templates
3. Consult `@engineer` to verify technical claims
4. Check current product roadmap
Expand Down
6 changes: 3 additions & 3 deletions .ai-agents/roles/reviewer.md → .claude/roles/reviewer.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,9 +8,9 @@
## Prerequisites

Before reviewing:
1. Read `shared/architecture.md` for expected patterns
2. Read `shared/conventions.md` for naming/style rules
3. Read `shared/boundaries.md` for role restrictions
1. Read `.claude/shared/architecture.md` for expected patterns
2. Read `.claude/shared/conventions.md` for naming/style rules
3. Read `.claude/shared/boundaries.md` for role restrictions
4. Understand the feature context from domain files

---
Expand Down
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,7 @@ Use this template to ask the user:

### Read Domain Context
```
.ai-agents/domains/{relevant-domain}/context.md
.claude/domains/{relevant-domain}/context.md
```

### Check Existing Code
Expand Down
File renamed without changes.
15 changes: 9 additions & 6 deletions CLAUDE.md
Original file line number Diff line number Diff line change
Expand Up @@ -584,15 +584,18 @@ Message → Handler → External API/AI → Repository update

# 12. Agents

This project uses specialized agents defined in `.ai-agents/`:
This project uses specialized agents defined in `.claude/`:

| Agent | File | Purpose |
|-------|------|---------|
| `@signalist-engineer` | `engineering.md` | Backend development, CQRS, Symfony |
| `@signalist-frontend` | `frontend.md` | React, TypeScript, MUI components |
| `@signalist-ai` | `ai-integration.md` | Symfony AI, MCP, embeddings |
| `@signalist-infra` | `infrastructure.md` | Docker, PostgreSQL, Redis |
| `@signalist-marketer` | `marketing.md` | Content, growth, positioning |
| `@engineer` | `.claude/roles/engineer.md` | Backend development, CQRS, Symfony |
| `@frontend` | `.claude/roles/frontend.md` | React, TypeScript, MUI components |
| `@ai-specialist` | `.claude/roles/ai-specialist.md` | Symfony AI, MCP, embeddings |
| `@infra` | `.claude/roles/infra.md` | Docker, PostgreSQL, Redis |
| `@reviewer` | `.claude/roles/reviewer.md` | Code quality, security, architecture |
| `@marketer` | `.claude/roles/marketer.md` | Content, growth, positioning |

See `.claude/AGENTS.md` for routing, coordination protocol, and domain contexts.

## 12.1 Marketing Resources

Expand Down