|
Download specs/project.md from SaylorTwift/opencode: direct link, hf CLI and curl.
- Browser
- Download file 1.73 kB
-
https://huggingface.co/SaylorTwift/opencode/resolve/main/specs/project.md
- Command line
-
hf download hf://SaylorTwift/opencode/specs/project.md
-
curl -L -o project.md https://huggingface.co/SaylorTwift/opencode/resolve/main/specs/project.md
1.73 kB
| ## project | |
| The goal is to let a single instance of OpenCode run sessions for multiple projects and different worktrees per project. | |
| ### api | |
| ``` | |
| GET /project -> Project[] | |
| POST /project/init -> Project | |
| GET /project/:projectID/session -> Session[] | |
| GET /project/:projectID/session/:sessionID -> Session | |
| POST /project/:projectID/session -> Session | |
| { | |
| id?: string | |
| parentID?: string | |
| directory: string | |
| } | |
| DELETE /project/:projectID/session/:sessionID | |
| POST /project/:projectID/session/:sessionID/init | |
| POST /project/:projectID/session/:sessionID/abort | |
| POST /project/:projectID/session/:sessionID/share | |
| DELETE /project/:projectID/session/:sessionID/share | |
| POST /project/:projectID/session/:sessionID/compact | |
| GET /project/:projectID/session/:sessionID/message -> { info: Message, parts: Part[] }[] | |
| GET /project/:projectID/session/:sessionID/message/:messageID -> { info: Message, parts: Part[] } | |
| POST /project/:projectID/session/:sessionID/message -> { info: Message, parts: Part[] } | |
| POST /project/:projectID/session/:sessionID/revert -> Session | |
| POST /project/:projectID/session/:sessionID/unrevert -> Session | |
| POST /project/:projectID/session/:sessionID/permission/:permissionID -> Session | |
| GET /project/:projectID/session/:sessionID/find/file -> string[] | |
| GET /project/:projectID/session/:sessionID/file -> { type: "raw" | "patch", content: string } | |
| GET /project/:projectID/session/:sessionID/file/status -> File[] | |
| POST /log | |
| // These are awkward | |
| GET /provider?directory=<resolve path> -> Provider | |
| GET /config?directory=<resolve path> -> Config // think only tui uses this? | |
| GET /project/:projectID/agent?directory=<resolve path> -> Agent | |
| GET /project/:projectID/find/file?directory=<resolve path> -> File | |
| ``` | |