project_id, and task tools also take a workspace_id. Here’s what they are and how to get them.
Project
A project is a repository connected to Autonomy.list_projects returns the projects you have access to, each with a project_id and a status_data.status.
A newly connected repo starts in PENDING_INITIALIZATION. Before you can build in it, its workspace has to be provisioned:
1
List projects
list_projects - find your project and check status_data.status.2
Initialize if needed
If the status isn’t
READY, call initialize_project(project_id). This provisions the sandbox/workspace and runs detection (install scripts, validation).3
Poll until READY
Poll
list_projects until the project is READY - that’s when it gets a workspace_id.list_available_projects to see repos you can connect but haven’t yet, and add_projects to link them.
Workspace
A workspace is the initialized, buildable copy of a project - it’s what a coding task runs against. You get aworkspace_id from list_projects once the project is READY, and pass it to start_task.
Setting a project up
For the agent to actually build, the project needs its commands configured (install / validate / dev) and any required environment variables. That’s covered in the Setup tools and the built-insetup skill (load_autonomy_skill name="setup").