Summary:
- This PR replaces the generated Documentation prompt wording with self-knowledge docs-authority guidance and updates prompt tests plus the system-prompt docs.
- PR surface: Source 0, Tests +27, Docs +6. Total +33 across 4 files.
- Reproducibility: yes. from source for the prompt gap: current main and v2026.6.8 have only broad docs-first ... ledge failure example. I did not run a fresh current-main live model conversation in this read-only review.
Automerge notes:
- PR branch already contained follow-up commit before automerge: fix: strengthen self-knowledge docs prompt
- PR branch already contained follow-up commit before automerge: test: narrow cli prompt tool assertion
- PR branch already contained follow-up commit before automerge: fix: condense self-knowledge docs prompt
- PR branch already contained follow-up commit before automerge: fix: clarify self-knowledge docs authority
- PR branch already contained follow-up commit before automerge: Merge branch 'main' into sutrah/self-knowledge-docs-prompt
Validation:
- ClawSweeper review passed for head 88a7db5d2a.
- Required merge gates passed before the squash merge.
Prepared head SHA: 88a7db5d2a
Review: https://github.com/openclaw/openclaw/pull/90882#issuecomment-4637990339
Co-authored-by: Sutra Hsing <sutrahsing@163.com>
Co-authored-by: sutra <sutrahsing@163.com>
* Add /name chat command to rename the current session
Adds a `/name <title>` slash command so users can name or rename the
current session directly from any chat channel, instead of only through
the web/admin session manager. This keeps parallel sessions easy to tell
apart from within the chat flow.
Behaviour:
- `/name <title>` sets the session label, reusing the canonical
`parseSessionLabel` validation (trim, non-empty, max 512 chars) and the
same cross-store uniqueness rule enforced by the web `sessions.patch`
path, so chat naming behaves identically to the session manager.
- `/name` with no argument shows the current name plus a locally derived
`deriveSessionTitle` suggestion without mutating anything (no LLM).
- Only authorized senders can rename (rejectUnauthorizedCommand), matching
/goal. The label surfaces everywhere sessions.list is shown (TUI, web,
CLI, MCP).
The handler resolves the session via resolveSessionStoreEntry so renames
land on the canonical entry even when the store still holds a legacy or
case-folded key alias, and excludes those aliases from the uniqueness scan
to avoid false conflicts. Failed renames skip the store write.
Registers the command in commands-registry.shared.ts and the handler in
loadCommandHandlers, documents it in docs/tools/slash-commands.md, and adds
unit tests covering rename, no-arg suggestion, duplicate-label rejection,
unauthorized senders, disabled text commands, and persisted-name re-read.
Part of the chat-native session naming feature (follows the web in-chat
rename PR). Relates to openclaw#85502 and openclaw#54397.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
* fix(name): seed native sessions and persist renames via canonical key
Address Codex review on PR #88581:
- Fall back to the in-memory params.sessionEntry when the store has no row
yet, so a brand-new native slash session can be named from its first
/name command instead of failing with 'no active session to name'.
- Persist the rename through resolved.normalizedKey and drop legacy/
case-folded alias keys (mirroring persistResolvedSessionEntry) so the
canonical entry is updated and sessions.list stops surfacing the stale
alias row.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
* fix(name): emit session metadata changes
Route successful /name renames through the shared command session metadata seam so subscribed session lists receive sessions.changed like /goal.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
* feat(commands): add /name to rename the current session from chat
* fix(docs): document the /name slash command
---------
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Agent <agent@example.com>
Co-authored-by: openclaw-clownfish[bot] <280122609+openclaw-clownfish[bot]@users.noreply.github.com>
One-time maintainer-authorized bootstrap merge for the release-gate verifier policy. Exact hosted CI and all supporting workflow gates passed on 66133de419.
Clarify that `openclaw mcp list`, `show`, `set`, and `unset` manage the OpenClaw `mcp.servers` registry and do not include the separate mcporter registry.
Co-authored-by: Alix-007 <li.long15@xydigit.com>