Tasks
Tasks represent discrete development objectives Pochi manages from conception to completion. Each task maintains its own context, progress tracking, and collaboration thread within your team's workspace.
Tasks differ from simple prompts by maintaining persistent context, enabling collaborative development, and chain of conversations.
Pochi also keeps persistent state of your tasks, and allows sharing a task if you'd like.

Interruptions (Rejection, Editing)
During Pochi's execution of a task, just like how you work with real engineers, you can also interrupt Pochi's execution any time to modify requirements, reject approaches, adjust priorities, or incorporate team feedback. Interruptions come naturally just like how you'd talk with a fellow engineer - simply send a message to indicate your intension, then Pochi would pause and reconsiders task planning based on your message. Some interruption messages could look like
"Change the database from SQLite to PostgreSQL";
"This layout won't work on mobile. Use a card-based design instead";
"Don't use inline styles - let's go with CSS modules";
"Skip the styling for now - let's focus on the API integration first";
Changes are immediately reflected in the task thread with updated plans. All thread participants are notified of modifications, while previous work remains accessible in the thread history. Development resumes seamlessly with new requirements while maintaining consistency.
Auto-Approve
Auto-approve allows Pochi to execute certain actions autonomously without requiring manual confirmation for each step, streamlining your development workflow.

By default, Pochi asks for your permission (manuel confirming) before taking any action, including reading or writing files. If you want to allow Pochi to directly take actions, you can set the Auto Approve permission for that action.
Category | Operations |
---|---|
Read | Read the file content Pochi decides to look up for analyzing or completing tasks. |
Write | Creates new files, edits existing code, generates boilerplate, and writes documentation. |
Execute | Manages dependencies, runs builds, tests, and perform system operations. |
Use MCP | Interacts with databases, APIs, and other external services to expand its capabilities with MCP server. |
Retry Logic | Automatically retries failed commands, code changes, and installations. |
Best Practices
For most serious development workflows, we recommend starting with:
- Auto-approving read access to project files
- Setting a reasonable maximum request limit (suggest to start with at least 3)
This gives Pochi enough freedom to explore your codebase without constant interruptions, while still requiring permission for edits or potentially destructive actions.
As you build more trust in Pochi's capabilities with your specific projects, you can gradually increase the permissions to match your comfort level.
Remember that you can always adjust these settings as your needs change - tighten permissions for critical production work, or loosen them when prototyping and exploring.
Advanced Settings - Developer Only, Use at Your Own Risk
Advanced Settings include Developer Mode that allows you to configure Pochi's behavior with advanced options to customize your development workflow and debugging experience. These settings are experimental and may affect stability.
-
Enable Gemini Custom Tool Calls: Pochi allows you to integrate custom tools by defining them in a dedicated
tools.ts
file. When this feature is enabled, Pochi will automatically detect and utilize the tools you've defined, making them available for use in your development workflow. This enables you to extend Pochi's capabilities with your own custom functionalities. -
Enable Tool: newTask: The
newTask
tool is a powerful feature that allows Pochi to create new tasks programmatically. When this tool is enabled, Pochi can autonomously generate and manage tasks based on your instructions or as part of a larger workflow. This is particularly useful for automating repetitive processes or for creating complex, multi-step operations that involve multiple tasks.