Files
small-scripts/data/idle-draft/prompts/topic-ideas.md
Paul O'Reilly 75add58246 idle-draft: per-work-type allowed_tools; research must web-search for stories
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
2026-08-02 21:32:35 +12:00

3.1 KiB
Raw Permalink Blame History

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).
  • 24 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)

## <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.