Loading...
Loading...
Use Twill Cloud Coding Agent to manage Twill's public v1 API workflows. Create/list/update tasks, stream and cancel jobs, manage scheduled tasks, list repositories, and export Claude teleport sessions.
npx skill4agent add twillai/skills twill-cloud-coding-agentv1export TWILL_API_KEY="your_api_key"
export TWILL_BASE_URL="${TWILL_BASE_URL:-https://twill.ai}"Authorization: Bearer $TWILL_API_KEYapi() {
curl -sS "$@" \
-H "Authorization: Bearer $TWILL_API_KEY" \
-H "Content-Type: application/json"
}GET /api/v1/auth/meGET /api/v1/repositoriesPOST /api/v1/tasksGET /api/v1/tasksGET /api/v1/tasks/:taskIdOrSlugPOST /api/v1/tasks/:taskIdOrSlug/messagesGET /api/v1/tasks/:taskIdOrSlug/jobsPOST /api/v1/tasks/:taskIdOrSlug/approve-planPOST /api/v1/tasks/:taskIdOrSlug/cancelPOST /api/v1/tasks/:taskIdOrSlug/archiveGET /api/v1/tasks/:taskIdOrSlug/teleport/claudeGET /api/v1/jobs/:jobId/logs/streamPOST /api/v1/jobs/:jobId/cancelGET /api/v1/scheduled-tasksPOST /api/v1/scheduled-tasksGET /api/v1/scheduled-tasks/:scheduledTaskIdPATCH /api/v1/scheduled-tasks/:scheduledTaskIdDELETE /api/v1/scheduled-tasks/:scheduledTaskIdPOST /api/v1/scheduled-tasks/:scheduledTaskId/pausePOST /api/v1/scheduled-tasks/:scheduledTaskId/resumecurl -sS "$TWILL_BASE_URL/api/v1/auth/me" \
-H "Authorization: Bearer $TWILL_API_KEY"curl -sS "$TWILL_BASE_URL/api/v1/repositories" \
-H "Authorization: Bearer $TWILL_API_KEY"api -X POST "$TWILL_BASE_URL/api/v1/tasks" \
-d '{"command":"Fix flaky tests in CI","repository":"owner/repo","userIntent":"SWE"}'commandrepositoryowner/repobranchagentcodexcodex/gpt-5.2userIntentSWEPLANASKDEV_ENVIRONMENTSWEtitlefiles{ filename, mediaType, url }task.urlcurl -sS "$TWILL_BASE_URL/api/v1/tasks?limit=20&cursor=BASE64_CURSOR" \
-H "Authorization: Bearer $TWILL_API_KEY"limitcursorcurl -sS "$TWILL_BASE_URL/api/v1/tasks/TASK_ID_OR_SLUG" \
-H "Authorization: Bearer $TWILL_API_KEY"latestJobapi -X POST "$TWILL_BASE_URL/api/v1/tasks/TASK_ID_OR_SLUG/messages" \
-d '{"message":"Please prioritize login flow first","userIntent":"PLAN"}'userIntentfilescurl -sS "$TWILL_BASE_URL/api/v1/tasks/TASK_ID_OR_SLUG/jobs?limit=30&cursor=BASE64_CURSOR" \
-H "Authorization: Bearer $TWILL_API_KEY"limit30100cursorjobsnextCursorapi -X POST "$TWILL_BASE_URL/api/v1/tasks/TASK_ID_OR_SLUG/approve-plan" \
-d '{}'api -X POST "$TWILL_BASE_URL/api/v1/tasks/TASK_ID_OR_SLUG/cancel" -d '{}'api -X POST "$TWILL_BASE_URL/api/v1/tasks/TASK_ID_OR_SLUG/archive" -d '{}'curl -N "$TWILL_BASE_URL/api/v1/jobs/JOB_ID/logs/stream" \
-H "Authorization: Bearer $TWILL_API_KEY" \
-H "Accept: text/event-stream"data:completeapi -X POST "$TWILL_BASE_URL/api/v1/jobs/JOB_ID/cancel" -d '{}'curl -sS "$TWILL_BASE_URL/api/v1/scheduled-tasks" \
-H "Authorization: Bearer $TWILL_API_KEY"
api -X POST "$TWILL_BASE_URL/api/v1/scheduled-tasks" -d '{
"title":"Daily triage",
"message":"Review urgent issues and open tasks",
"repositoryUrl":"https://github.com/org/repo",
"baseBranch":"main",
"cronExpression":"0 9 * * 1-5",
"timezone":"America/New_York",
"agentProviderId":"claude-code/sonnet"
}'titlemessagerepositoryUrlbaseBranchcronExpressiontimezone"UTC"agentProviderIdcurl -sS "$TWILL_BASE_URL/api/v1/scheduled-tasks/SCHEDULED_TASK_ID" \
-H "Authorization: Bearer $TWILL_API_KEY"
api -X PATCH "$TWILL_BASE_URL/api/v1/scheduled-tasks/SCHEDULED_TASK_ID" -d '{
"message":"Updated instructions",
"cronExpression":"0 10 * * 1-5",
"agentProviderId":"codex/gpt-5.2"
}'
curl -sS -X DELETE "$TWILL_BASE_URL/api/v1/scheduled-tasks/SCHEDULED_TASK_ID" \
-H "Authorization: Bearer $TWILL_API_KEY"api -X POST "$TWILL_BASE_URL/api/v1/scheduled-tasks/SCHEDULED_TASK_ID/pause" -d '{}'
api -X POST "$TWILL_BASE_URL/api/v1/scheduled-tasks/SCHEDULED_TASK_ID/resume" -d '{}'userIntentSWEPLANASKDEV_ENVIRONMENTtask.urlTWILL_API_KEY