a bot names itself after it arms

the automatic title is the owner's first sentence truncated — "can you notifiy
me when https://newweb.fofos…", typo included. that is a prompt, not a name,
and it is what they scan a list of bots for later.

so after arming: two to four words, the subject and what is watched about it.
"newweb uptime", "NYT front page". explicitly NOT "Website Monitor Bot" — every
bot is a monitor and the word earns nothing in a list of them.

this also closes the hand-wave in the record step. it said "your session id is
the file name you were told to use — if you do not know it, look at which
transcript you are in", which is not an instruction anybody can follow. now it
lists /chat/sessions?context=bots and matches on the title, because claude
titles a session from its first message and on the arming turn that entry is
you.

which puts the three steps in a REQUIRED order, stated: find your id, write the
record, then rename. renaming first destroys the only thing that identifies you
in that list.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Officer-Session: 656f5c85-e49a-4f1f-b9f3-042a04b4d043
This commit is contained in:
2026-08-26 08:09:54 +00:00
co-authored by Claude Opus 5
parent 84d9c9d2d8
commit f6bd7564bb
+29 -4
View File
@@ -111,14 +111,39 @@ Write the new value to \`$STATE\` **before** exiting, or the next arming fires o
\`\`\` \`\`\`
**Rewrite it every time you arm**, with the new pid. \`pids\` is an array because a re-arm can briefly **Rewrite it every time you arm**, with the new pid. \`pids\` is an array because a re-arm can briefly
overlap; list every process you started that is still meant to be running. Your session id is the file overlap; list every process you started that is still meant to be running.
name you were told to use — if you do not know it, look at which transcript you are in.
5. **When you are handed back**, do what the owner asked, then **re-arm the same script the same way, **To find your own session id**, list the bots and match on the title:
\`\`\`bash
curl -s -H "Authorization: Bearer $OFFICER_AGENT_KEY" -H "Host: $OFFICER_API_HOST" \\
"$OFFICER_API_URL/api/chat/sessions?context=bots"
\`\`\`
Claude titles a session from its first message, so on the turn that arms you the entry titled with the
owner's own opening sentence is you. That is only reliable BEFORE you rename yourself — which is the
next step, so do them in this order: find your id, write the record, then rename.
5. **Give yourself a real name.** The automatic title is the owner's first sentence, truncated —
\`"can you notifiy me when https://newweb.fofos…"\`, typos and all. It is a prompt, not a name, and it is
what they will scan a list of bots for later.
\`\`\`bash
curl -s -X PATCH -H "Authorization: Bearer $OFFICER_AGENT_KEY" -H "Host: $OFFICER_API_HOST" \\
-H 'content-type: application/json' -d '{"title":"newweb uptime"}' \\
"$OFFICER_API_URL/api/chat/sessions/<your-session-id>/title"
\`\`\`
Two to four words, the SUBJECT and what is watched about it: \`newweb uptime\`, \`NYT front page\`,
\`gitea disk space\`. Not "Website Monitor Bot" — every bot is a monitor and the word earns nothing in a
list of them. Lower case unless the subject is a proper noun. Rename again if the owner widens what you
watch and the old name stops being true.
6. **When you are handed back**, do what the owner asked, then **re-arm the same script the same way,
before you end the turn**, and rewrite the record. Act, re-arm, record — in the one turn. Never build a before you end the turn**, and rewrite the record. Act, re-arm, record — in the one turn. Never build a
second loop on top of this. second loop on top of this.
6. **If you are woken and told your watch is gone**, read your own \`.bot.json\`, arm the script it names 7. **If you are woken and told your watch is gone**, read your own \`.bot.json\`, arm the script it names
again, and rewrite it. That file is what survives a reboot; the conversation may be days behind. again, and rewrite it. That file is what survives a reboot; the conversation may be days behind.
Do not go hunting for how any of this works — it is above, and looking costs the owner a minute of tool Do not go hunting for how any of this works — it is above, and looking costs the owner a minute of tool