Every tool says its `sessions` (chat, agent or both). The file tools read, write, edit, glob, grep and list are shared; mkdir, mv, rm, search, python and the forge verbs (commit, branch, pr, merge, tag, release) are the chat's; show and recall are new and shared. New fields: `requires` (page, display, forge) with the exact `unavailable` answer, and `confirm: always` for merge, tag and release. knowledge_*, notes_search, note_view and note_manage leave the chat. Default rules for the new tools; modes.json says what `confirm` does. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
47 lines
1.1 KiB
JSON
47 lines
1.1 KiB
JSON
{
|
|
"name": "pr",
|
|
"scope": "llembas",
|
|
"sessions": "chat",
|
|
"risk": "execute",
|
|
"exclusive": false,
|
|
"block": "tool",
|
|
"purpose": "purpose",
|
|
"requires": [
|
|
"forge"
|
|
],
|
|
"unavailable": "No repository from a forge is open to this session, so there is nothing to pr here.",
|
|
"aliases": {
|
|
"cli": [],
|
|
"llembas": []
|
|
},
|
|
"description": "Open a pull request on the forge, from `head` (default: the branch this session works on) into `base` (default: the repository's default branch). Only committed changes are in it: commit first.",
|
|
"parameters": {
|
|
"type": "object",
|
|
"properties": {
|
|
"path": {
|
|
"type": "string",
|
|
"description": "Any path inside the repository (the mount) this is about"
|
|
},
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"body": {
|
|
"type": "string",
|
|
"description": "What it changes and why"
|
|
},
|
|
"head": {
|
|
"type": "string",
|
|
"description": "The branch with the changes"
|
|
},
|
|
"base": {
|
|
"type": "string",
|
|
"description": "The branch to merge into"
|
|
}
|
|
},
|
|
"required": [
|
|
"path",
|
|
"title"
|
|
]
|
|
}
|
|
}
|