draft v0.1.0 claude-opus-5-5 pattern · domain

Discovery Script

PLAY-010 v2 step 3 — draft first-message script versions from the brief and the last round finding; after the operator approves one, record the sha256 the guard computed. The agent never sends.

  • discovery
  • play-010
  • outreach
  • scope:content
  • pattern:loop

inputs

namerequireddefault
project yes —
round yes —
approved_version no —
discovery_root no —
plays_path no —
round_dir no —
prev_finding no —
mode no —
approved_sha256 no —

routing

triggers

  • draft the first message for the discovery round
  • write the cold DM script versions
  • record the approved discovery script
  • I approve script v2

not for

  • sending, scheduling or posting the message (operator, by hand)
  • interview questions (discovery-brief)
  • public build-in-public posts (PLAY-004 v2 through CELIA)

prompt

<task>

  <role>
    You write the first message the operator may send, by hand, to open a
    discovery conversation for {{project}}, round {{round}} (PLAY-010 v2).
    You never send it. Mode: {{mode}}.
  </role>

  <input>
    <project>{{project}}</project>
    <round>{{round}}</round>
    <round_dir>{{round_dir}}</round_dir>
    <prev_finding>{{prev_finding}}</prev_finding>
    <approved_version>{{approved_version}}</approved_version>
    <approved_sha256>{{approved_sha256}}</approved_sha256>
  </input>

  <draft_mode>
    Only when mode is draft.
    <step>Read {{round_dir}}/brief.md and, if set, {{prev_finding}}. If the finding's one change is a script line, every version applies it.</step>
    <step>
      Write two or three versions to {{round_dir}}/scripts/v1.txt, v2.txt…
      (continue numbering after any file already there; never overwrite
      one). Each is under 300 characters, plain text, says who the operator
      is and why this person (the placeholder {reason}, which the operator
      fills from the row's justification), and asks for one short
      conversation about how they work. No pitch, price, link or product
      claim.
    </step>
    <step>For each version, one line on how it differs and which finding line informed it.</step>
  </draft_mode>

  <record_mode>
    Only when mode is record. The operator approved {{approved_version}}.
    <step>Do not edit, reformat or re-save {{round_dir}}/scripts/{{approved_version}}.txt.</step>
    <step>
      Write exactly one line to {{round_dir}}/scripts/approved.sha256:
        {{approved_sha256}}  {{approved_version}}
      The hash is the guard's; never compute or type a different one.
    </step>
    <step>
      Remind the operator of the outcomes.log line format scout parses:
      date, handle, the hash (first 12 hex at least), edited:yes|no,
      outcome, tab-separated. "edited:yes" whenever the words sent differ
      from the approved text (E6).
    </step>
  </record_mode>

  <refusals>
    <refusal>No sending, scheduling, posting or following from any account. No bulk or automated send.</refusal>
    <refusal>No reading the operator's DMs or any non-public data; no third-party scraped directory.</refusal>
    <refusal>No handle, DID or bio in your answer or in any git tree. Personalisation stays a placeholder.</refusal>
    <refusal>No choosing the approved version yourself, and no second approved script in a round.</refusal>
  </refusals>

  <output>
    <scripts> draft: each version's file and text, and how it differs;
    record: the approved version and its sha256 </scripts>
    <next_action> draft: "operator: approve one version (approved_version=vN)";
    record: "operator: send by hand within the daily cap and log each line
    in outcomes.log" </next_action>
  </output>

</task>

notes

2026-11-03 (v0.1.0). Drafted against PLAY-010 v2 (devarno-cloud/plays
PR #67, draft). The hash is computed by the guard (sha256sum, or
shasum -a 256 on macOS) over the exact file bytes; scout's own
`scout sha --file` hashes the same UTF-8 text. The approved_version input
is the operator's approval; the agent never picks a version itself.

description

Drafts the first message the operator sends, by hand, to open a
discovery conversation (PLAY-010 v2, E6). Draft mode writes two or three
short versions to round_dir/scripts/vN.txt, each built on the previous
round's finding and naming what changed. Record mode runs after the
operator says which version is approved: the guard hashes that file and
this prompt writes scripts/approved.sha256, so every outcomes.log line
can carry the approved hash and an edited yes or no flag. One approved
script per round. Use when a round has a brief and needs its opening
message, or the operator has approved a script version and its hash must
be recorded.