CREATE_OR_UPDATE_FILE
Create or update a file in a repository via the API.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
owner | string | yes | Repository owner |
repo | string | yes | Repository name |
path | string | yes | File path (e.g. 'docs/README.md') |
content | string | yes | File content (plain text) |
message | string | yes | Commit message |
branch | string | — | Target branch (default: default branch) |
sha | string | — | SHA of file being replaced (required for updates, get from GET_FILE_CONTENT) |
How to use it
You normally trigger this by describing what you want in chat — the agent selects CREATE_OR_UPDATE_FILE automatically. For example:
Try saying
“create a github document”
In a workflow
As a step in a multi-step workflow DAG:
json
{
"id": "s1",
"agent": "github",
"action": "CREATE_OR_UPDATE_FILE",
"args": {
"owner": "…",
"repo": "…",
"path": "/Users/me/Documents/file.txt",
"content": "…",
"message": "…"
},
"depends_on": [],
"outputs": []
}Direct call
For scripting, call it directly via POST /execute_tool. Every tool returns { success, message, data }.
bash
curl -X POST http://127.0.0.1:8000/execute_tool \
-H "Content-Type: application/json" \
-d '{"tool_name":"CREATE_OR_UPDATE_FILE","args":{"owner":"…","repo":"…","path":"/Users/me/Documents/file.txt","content":"…","message":"…"}}'Part of the github plugin. Browse the full Plugin & Tool Catalog or the relevant feature guide.