Research and topic_ideas runs get --allowedTools WebSearch,WebFetch; research template mandates >=1 web search for related stories with full-URL + access-date citations under the dossier's status labels. Claude-Session: https://claude.ai/code/session_01YQDoWNM7XPPii28khFWoMc
79 lines
3.1 KiB
Markdown
79 lines
3.1 KiB
Markdown
You are proposing **new candidate topics** for one dossier in the O'Reilly Consulting
|
||
writing pipeline. This runs only when no other work is currently eligible — the
|
||
dossier's existing topics are all blocked on a human step or already have enough work
|
||
in flight. Do not invent structure; follow this brief.
|
||
|
||
## Dossier
|
||
|
||
- Dossier: `$dossier`
|
||
- Dossier commissioning guide: $dossier_agents_path
|
||
- Project-root voice and citation rules: $agents_root_path
|
||
- Voice reference: $style_dir/goes-target-voice.md
|
||
|
||
Evidence you may cite must live under one of these directories (you have read access
|
||
via `--add-dir`):
|
||
|
||
$evidence_dirs
|
||
|
||
## Do not duplicate an existing topic
|
||
|
||
These titles already exist as numbered topic briefs or open proposals in this dossier.
|
||
Do **not** propose anything that duplicates or trivially rephrases one of these:
|
||
|
||
$existing_titles
|
||
|
||
## Check current discussion first
|
||
|
||
You have `WebSearch` available. Before proposing, run at least one `WebSearch`
|
||
to check what is currently being discussed in this dossier's topic area — this
|
||
keeps proposals grounded in what practitioners are actually talking about
|
||
right now, not just what the local evidence dirs already contain. This is a
|
||
lighter-touch check than the research work type's requirement: you do not need
|
||
to cite web sources in the proposal itself (evidence pointers below still come
|
||
from the evidence directories), just use the search to sanity-check relevance
|
||
and avoid pitching something already stale or already covered elsewhere.
|
||
|
||
## What to produce
|
||
|
||
Propose **up to $max_new** new candidate topics for this dossier, each grounded in
|
||
something you actually found under the evidence directories above — not a generic
|
||
industry-trend guess. For each candidate:
|
||
|
||
- A working title (sentence case, matching the dossier's existing topic-title style).
|
||
- A one-paragraph pitch: the decision or toil the topic would address, matching the
|
||
audience of this dossier (CTO/VP for consulting dossiers, implementing engineers for
|
||
technical dossiers — see `$dossier_agents_path` for which this is).
|
||
- 2–4 evidence pointers: file paths under the evidence directories, with a one-line
|
||
note on what each contains. Use the dossier's correct status-label family (see
|
||
`$agents_root_path`) on each.
|
||
|
||
You are proposing, not commissioning: **never create a numbered `NN-slug` file.** A
|
||
human promotes a proposal to a numbered brief later.
|
||
|
||
## Required structure (append this, do not replace the file)
|
||
|
||
```markdown
|
||
## <Working title, sentence case>
|
||
|
||
**Pitch:** <one paragraph>
|
||
|
||
**Evidence:**
|
||
|
||
- <path> — <one-line note, status label>
|
||
- <path> — <one-line note, status label>
|
||
```
|
||
|
||
One `##` block per proposed topic. All headings sentence case. No vendor names in
|
||
prose for consulting dossiers (`ai`, `devops-2020`) — vendor names may stay in the
|
||
evidence pointers' one-line notes only.
|
||
|
||
## Output
|
||
|
||
Write **only the new `##` blocks** (not the whole file — this content will be appended
|
||
to the dossier's existing `TOPIC-PROPOSALS.md`) to exactly this path:
|
||
|
||
$output_path
|
||
|
||
The dispatcher validates this file (non-empty, starts with a top-level `##` heading)
|
||
and appends it to the canonical proposals file itself.
|