-
Notifications
You must be signed in to change notification settings - Fork 2.3k
chore: remove autopilot experimental feature #5781
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
This PR removes the experimental AutoPilot feature, which provided context-aware automatic model switching based on conversation content, complexity, and tool usage patterns. The feature proved too complex with limitations around configuration complexity, unclear switching rules, and poor context management across different models.
- Complete removal of AutoPilot implementation code (~1,366 lines)
- Deletion of all AutoPilot configuration files and documentation
- Clean removal of AutoPilot integration from Agent class
Reviewed Changes
Copilot reviewed 9 out of 9 changed files in this pull request and generated no comments.
Show a summary per file
| File | Description |
|---|---|
documentation/docs/tutorials/lead-worker.md |
Removed AutoPilot promotional tip that referenced the now-deleted feature |
documentation/docs/guides/multi-model/creating-plans.md |
Updated multi-model alternatives section to only mention Lead/Worker mode, removed AutoPilot reference |
documentation/docs/guides/multi-model/autopilot.md |
Complete deletion of AutoPilot documentation (127 lines) |
crates/goose/src/agents/model_selector/premade_roles.yaml |
Deleted pre-made AutoPilot role configurations (181 lines) |
crates/goose/src/agents/model_selector/mod.rs |
Deleted module declaration for autopilot |
crates/goose/src/agents/model_selector/autopilot.rs |
Deleted complete AutoPilot implementation (1,366 lines including tests) |
crates/goose/src/agents/model_selector/README.md |
Deleted AutoPilot feature README |
crates/goose/src/agents/mod.rs |
Removed model_selector module from agents |
crates/goose/src/agents/agent.rs |
Removed AutoPilot field from Agent struct, removed AutoPilot import and initialization, removed model switching logic from reply loop |
Note: There are some stale AutoPilot references in documentation files that are not part of this PR (experimental/index.md, config-files.md, and environment-variables.md). These should be addressed in a follow-up to ensure complete removal of AutoPilot references from the documentation.
|
|
Autopilot used has been referenced from us in conjunction with lead/worker model as a solution to tokens being eaten up, namely for folks who can't use OpenRouter. As long as as the proposed solution we give community members doesn't solely depend on OpenRouter, then it's okay to remove Autopilot. I haven't seen much mention of Autopilot explicitly by community members, but I have seen mentions of concerns with tokens being eaten up and how to best manage that. |
|
@taniandjerry yeah - I wouldn't recommend it for low cost reasons as it may not end up saving (could end up costing more if it moves around, less caching) - lead worker is a little better, as you can have lead as the pricey one and worker as low cost grinding one. Am curious what combo of models people use for cost when that is a case, and token use, as that seems a separate thing to address (and I know @DOsinga has been thinking about it - likely a lot of things that can massively reduce the token use coming). I could also see an approach which has fallback providers - ie use them in order (low cost first), but this doesn't do that. and no future solution would depend on it, no. |
|
@taniandjerry so youok with removing this (and docs) in that case? |
blackgirlbytes
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
im okay with removing this. chatted with my team..and yes let's remove the documentation around this.
…xt-test * 'main' of github.com:block/goose: chore: Add Adrian Cole to Maintainers (#5815) [MCP-UI] Proxy and Better Message Handling (#5487) Release 1.15.0 Document New Window menu in macOS dock (#5811) Catch cron errors (#5707) feat/fix Re-enabled WAL with commit transaction management (Linux Verification Requested) (#5793) chore: remove autopilot experimental feature (#5781) Read paths from an interactive & login shell (#5774) docs: acp clients (#5800)
* main: feat/fix Re-enabled WAL with commit transaction management (Linux Verification Requested) (#5793) chore: remove autopilot experimental feature (#5781) Read paths from an interactive & login shell (#5774) docs: acp clients (#5800) Provider error proxy for simulating various types of errors (#5091) chore: Add links to maintainer profiles (#5788) Quick fix for community all stars script (#5798) Document Mistral AI provider (#5799) docs: Add Community Stars recipe script and txt file (#5776)
* main: (33 commits) fix: support Gemini 3's thought signatures (#5806) chore: Add Adrian Cole to Maintainers (#5815) [MCP-UI] Proxy and Better Message Handling (#5487) Release 1.15.0 Document New Window menu in macOS dock (#5811) Catch cron errors (#5707) feat/fix Re-enabled WAL with commit transaction management (Linux Verification Requested) (#5793) chore: remove autopilot experimental feature (#5781) Read paths from an interactive & login shell (#5774) docs: acp clients (#5800) Provider error proxy for simulating various types of errors (#5091) chore: Add links to maintainer profiles (#5788) Quick fix for community all stars script (#5798) Document Mistral AI provider (#5799) docs: Add Community Stars recipe script and txt file (#5776) chore: incorporate LF feedback (#5787) docs: quick launcher (#5779) Bump auto scroll threshold (#5738) fix: add one-time cleanup for linux hermit locking issues (#5742) Don't show update tray icon if GOOSE_VERSION is set (#5750) ...
Signed-off-by: Blair Allan <[email protected]>
"Autopilot" was an experiment in using heuristics to switch models, but it hasn't been widely used, nor has it been that successful.
some limitations:
I think a better approach in future would be:
1 above can be done today with virtual providers like openrouter
2 to 4 are natural places to switch providers or models to get best effect (and in 3, can even be in parallel)