bandicot
Bandicot Docs
Chapter VReference · Available now

Engine methods

Every method the Bandicot engine answers, grouped by what it touches, with whether it reads, writes, spends model time or reaches outside.

Available now. A current user-facing path exists within the stated scope.

How to read this list

Each method has an effect: read only looks, write changes Bandicot's state, spends starts model work, and outside reaches the network, a browser, the Mac or other people.

Call any of them with bandicot rpc. The params column is what the method reads; ? marks an optional key. bandicot methods prints the same list from the app you have installed.

Engine and status

Engine and status: 16 methods.

Call any of these with bandicot rpc, the method name and its params as JSON. Add --yes to anything that is not a read.

Engine and status methods
MethodEffectParams
snapshotread{}
command_listread{}
capabilities_getread{}
workspace_statusread{}
workspace_openwrite{path}
helper_statusread{}
helper_restartwrite{helper:browser|team}
tenancyread{}
data_ownerread{}
data_owner_yieldwrite{}
engine_idleread{}
local_owner_statusread{}
local_owner_bindwrite{}
local_owner_unbindwrite{}
entitlement_applywrite{grant}
plan_setwrite{plan, is_admin?, unlimited_profiles?}

Chats

Chats: 20 methods.

Call any of these with bandicot rpc, the method name and its params as JSON. Add --yes to anything that is not a read.

Chats methods
MethodEffectParams
session_listread{}
session_createwrite{id?, title?, type?, ephemeral?, parent_session_id?}
session_openwrite{session_id}
session_activitywrite{}
session_historyread{session_id}
session_readread{session_key:{profile_id, project_id:null, session_id} (copy it from session_list), limit?:1..200, direction?:backward|forward, cursor?}
history_viewread{session_id, around:1..}
session_statsread{session_id}
session_renamewrite{session_id, title}
session_deletewrite{session_id}
session_compactspends{mode?:auto|jev|summary}
session_rewind_previewread{session_id, entry_id, files?, conversation?}
session_rewindwrite{session_id, preview_id}
sub_session_decidespends{id, decision: start|always|not_now}
sub_session_resumespends{id}
sub_session_listread{parent_session_id?}
sub_session_stopwrite{id}
sub_session_archivewrite{id}
sub_session_threadread{parent_session_id}
sub_session_costread{parent_session_id}

Runs, steering and answers

Runs, steering and answers: 21 methods.

Call any of these with bandicot rpc, the method name and its params as JSON. Add --yes to anything that is not a read.

Runs, steering and answers methods
MethodEffectParams
promptspends{text, session_id?}
run_startspends{session_key:{profile_id, project_id:null, session_id} (copy it from session_list), idempotency_key, user_text|text, workspace_mode?:root|isolated}
run_getread{run_key}
run_stopwrite{run_key}
run_timelineread{session_id, before?, limit?, line?}
session_steerspends{run_key, message_id, text}
steerspends{session_id?, message_id, text}
follow_upspends{session_id?, message_id, text}
session_subscriberead{session_key:{profile_id, project_id:null, session_id} (copy it from session_list), cursor?:{session_key, event_seq}, after_seq?}
session_unsubscriberead{subscription_id}
approval_answerspends{request_id, decision, revision?, run_key?, session_id?}
question_answerspends{question_id, revision?, text?, run_key?, session_id?}
permission_actionspends{request_id, decision, run_key?, session_id?}
abortwrite{}
commandspends{text}
tool_runspends{name, arguments:{..}, session_id?}
pause_runwrite{}
resume_runwrite{}
efficiency_snapshotread{session_id, session_key?, before?, evidence_seq?}
efficiency_subscriberead{session_id?, session_key?, after_seq?, unsubscribe?}
efficiency_actionspends{session_id, session_key?, action, retention_days?, runtime_limit_ms?, continue_after_answer?}

Models, providers and accounts

Models, providers and accounts: 25 methods.

Call any of these with bandicot rpc, the method name and its params as JSON. Add --yes to anything that is not a read.

Models, providers and accounts methods
MethodEffectParams
provider_listread{}
provider_presetsread{}
model_listread{profile_id?}
gateway_catalog_getread{profile_id?}
gateway_catalog_refreshoutside{profile_id?, provider}
gateway_model_enabled_setwrite{profile_id?, provider, model, enabled}
gateway_provider_enabled_setwrite{profile_id?, provider, enabled}
provider_upsertwrite{profile_id?, provider settings}
provider_removewrite{profile_id?, provider}
model_selectwrite{profile_id?, provider, model}
provider_selectwrite{provider}
model_libraryoutside{op, id?, repo?, revision?, license?, level?, context?, limit?, refresh?, throttle_bps?}
usage_ledgerread{profile_id?, since_ms?, until_ms?}
model_behaviorread{profile_id?, since_ms?, until_ms?}
slow_laneread{}
slow_lane_setwrite{provider:anthropic|openai, on}
credential_grantwrite{provider}
account_bindwrite{account_id, email?, name?}
account_connectoutside{provider, profile_id?, method?, secret?, device_auth_id?, user_code?, interval?}
account_login_polloutside{provider, profile_id?, authorization_code?, code_verifier?}
account_disconnectwrite{provider, profile_id?}
account_unbindwrite{}
account_usageread{provider?}
ai_usage_limits_getread{}
ai_usage_limits_setwrite{revision, enabled, cap_micros}

Profiles

Profiles: 12 methods.

Call any of these with bandicot rpc, the method name and its params as JSON. Add --yes to anything that is not a read.

Profiles methods
MethodEffectParams
work_profile_catalogread{}
work_profile_selectwrite{profile_id}
work_profile_savewrite{profile_json}
work_profile_deletewrite{profile_id}
profile_listread{}
profile_createwrite{name, mode?, parent_profile_id?, avatar_color?, avatar_json?}
profile_selectwrite{id}
profile_ensure_engineerwrite{}
profile_updatewrite{id, name?, mode?, avatar_color?, avatar_json?}
profile_renamewrite{id, name}
profile_deletewrite{id, confirm, sessions?, automations?}
profile_analyticsread{profile_id?, since_ms?, until_ms?}

Settings

Settings: 24 methods.

Call any of these with bandicot rpc, the method name and its params as JSON. Add --yes to anything that is not a read.

Settings methods
MethodEffectParams
settings_getread{}
settings_caps_getread{}
ui_prefs_getread{}
settings_setwrite{axis, value}
settings_caps_setwrite{caps?, tools?, compaction?, browser_access?, outside_project?, brain_*?, context_*?, jev_*?, plan_chain_auto_continue?}
settings_folders_getread{}
settings_folders_setwrite{folders_json | path, access}
ui_prefs_setwrite{base_revision, prefs_json}
permissions_file_getread{}
permissions_file_savewrite{text}
agent_style_getread{}
agent_style_savewrite{style?, profile_text?, behaviour?, reset?}
agent_project_instructions_savewrite{text, workspace?}
agent_style_applywrite{}
decision_settings_getread{}
decision_settings_setwrite{decision:{..}}
decision_capabilitiesread{}
decision_runspends{decision arguments}
decision_shadow_tailread{limit?}
rack_getread{}
rack_setwrite{base_revision, state_json}
rack_compilewrite{}
rack_speechread{}
rack_transcribespends{audio_base64}

Memory and plans

Memory and plans: 16 methods.

Call any of these with bandicot rpc, the method name and its params as JSON. Add --yes to anything that is not a read.

Memory and plans methods
MethodEffectParams
memory_listread{}
memory_getread{id}
memory_putwrite{id?, title, text}
memory_forgetwrite{id}
memory_revealoutside{id}
memory_shareoutside{id, shared}
memory_share_alloutside{on}
memory_team_forgetwrite{member, id}
memory_suggestionsread{}
memory_suggestion_keepwrite{scope, id, text?}
memory_suggestion_dismisswrite{scope, id}
memory_suggestion_undowrite{scope, id}
memory_tidy_setwrite{jev}
agent_plan_getread{}
agent_plan_setwrite{steps?, id?, status?, text?}
plan_editwrite{session_id, op, expected_revision, scope?, index?, plan_index?, steps?}

Tools, skills and plugins

Tools, skills and plugins: 12 methods.

Call any of these with bandicot rpc, the method name and its params as JSON. Add --yes to anything that is not a read.

Tools, skills and plugins methods
MethodEffectParams
tool_listread{}
agent_listread{}
skill_listread{}
extensions_listread{}
extensions_installwrite{path}
extensions_trustwrite{path}
plugin_listread{}
plugin_searchread{query?}
plugin_previewread{name}
plugin_installwrite{name, fingerprint}
plugin_activatewrite{name, fingerprint}
plugin_deactivatewrite{name}

Files, artifacts and canvas

Files, artifacts and canvas: 18 methods.

Call any of these with bandicot rpc, the method name and its params as JSON. Add --yes to anything that is not a read.

Files, artifacts and canvas methods
MethodEffectParams
file_listread{dir}
file_fetchread{path}
artifact_listread{}
artifact_readread{id, max_bytes?}
artifact_editwrite{id, content}
artifact_sliceread{id, offset?, limit?}
artifact_searchread{id, pattern, limit?}
board_getread{session_id}
board_editwrite{session_id, op, json}
drawing_getread{session_id}
drawing_editwrite{session_id, op, json}
graph_getread{}
mutation_historyread{}
mutation_diffread{}
mutation_previewread{effect_id, path, old, new?, expected_occurrences?}
mutation_restorewrite{effect_id}
mutation_checkpointwrite{effect_id}
mutation_resolvewrite{effect_id, decision}

Versions

Versions: 35 methods.

Call any of these with bandicot rpc, the method name and its params as JSON. Add --yes to anything that is not a read.

Versions methods
MethodEffectParams
versions_listread{profile_id?, project_id?, scope?}
versions_historyread{profile_id?, project_id?, scope?}
versions_shareoutside{profile_id?, project_id?, scope?, team_id, share_id?}
versions_sharesread{profile_id?, project_id?, scope?}
versions_unshareoutside{profile_id?, project_id?, scope?, share_id}
versions_sync_nowoutside{profile_id?, project_id?, scope?}
versions_conflictsread{profile_id?, project_id?, scope?}
versions_resolvewrite{profile_id?, project_id?, scope?, path, choice}
versions_statusread{profile_id?, project_id?, scope?}
versions_enroll_previewread{profile_id?, project_id?, scope?}
versions_enrollwrite{profile_id?, project_id?, scope?, confirm:true, preview_id}
versions_logread{profile_id?, project_id?, scope?, limit?, before?}
versions_runsread{profile_id?, project_id?, scope?, limit?, before?}
versions_run_undo_previewread{profile_id?, project_id?, scope?, run_id, paths?}
versions_run_undowrite{profile_id?, project_id?, scope?, preview_id, idempotency_key, expected_head?, choices?, hunks?}
versions_diffread{profile_id?, project_id?, scope?, path, version?, offset?, limit?}
versions_showread{profile_id?, project_id?, scope?, path, version?, offset?, limit?}
versions_restorewrite{profile_id?, project_id?, scope?, action, path, version?, expected_head?, preview_id?, idempotency_key?}
versions_undowrite{profile_id?, project_id?, scope?, action, operation?, expected_head?}
versions_describewrite{profile_id?, project_id?, scope?, description, expected_head?, operation?}
versions_storageread{profile_id?, project_id?, scope?}
versions_export_previewread{profile_id?, project_id?, scope?, destination, version?}
versions_exportwrite{profile_id?, project_id?, scope?, confirm, preview_id}
versions_changesread{profile_id?, project_id?, scope?, limit?, before?}
change_previewread{profile_id?, project_id?, scope?, change_id}
change_diffread{profile_id?, project_id?, scope?, change_id, path}
apply_changewrite{profile_id?, project_id?, scope?, preview_id, idempotency_key, expected_head?, choices?, hunks?}
discard_changewrite{profile_id?, project_id?, scope?, change_id}
change_choices_setwrite{profile_id?, project_id?, scope?, change_id, choices}
versions_hunksread{profile_id?, project_id?, scope?, path, preview_id? | change_id?}
versions_markwrite{profile_id?, project_id?, scope?, label, operation?}
versions_marksread{profile_id?, project_id?, scope?}
versions_unmarkwrite{profile_id?, project_id?, scope?, label}
versions_folder_restore_previewread{profile_id?, project_id?, scope?, path, operation}
versions_folder_restorewrite{profile_id?, project_id?, scope?, preview_id, expected_head?}

Versions backups

Versions backups: 8 methods.

Call any of these with bandicot rpc, the method name and its params as JSON. Add --yes to anything that is not a read.

Versions backups methods
MethodEffectParams
versions_backup_statusread{}
versions_backup_nowoutside{}
versions_backup_diskwrite{name, keep}
versions_backup_icloudwrite{keep}
versions_backup_findread{icloud?}
versions_backup_openread{path, kit}
versions_backup_sealwrite{kit, confirm?, old_kit?}
versions_backup_restorewrite{path, kit}

Tasks and automations

Tasks and automations: 8 methods.

Call any of these with bandicot rpc, the method name and its params as JSON. Add --yes to anything that is not a read.

Tasks and automations methods
MethodEffectParams
tasks_todayread{since_ms?}
tasks_listread{since_ms?, until_ms?, limit?, model?, outcome?, workspace?}
automaton_runsread{id?, limit?}
automation_listread{}
automation_upsertwrite{id?, automation fields}
automation_togglewrite{id, enabled}
automation_deletewrite{id}
automation_runspends{id, idempotency_key, expected_revision?, prompt?}

Browser and computer

Browser and computer: 11 methods.

Call any of these with bandicot rpc, the method name and its params as JSON. Add --yes to anything that is not a read.

Browser and computer methods
MethodEffectParams
browser_statusread{}
browser_actionoutside{action, ref?, expression?}
browser_streamwrite{state, width?, height?, dpr?}
browser_inputoutside{kind, generation, type?, x?, y?, button?, buttons?, key?, code?, text?, modifiers?}
browser_navigateoutside{url}
browser_historyoutside{action}
browser_tabsoutside{action, id?, url?}
computer_statusread{}
computer_permissionsoutside{kind}
simulator_statusread{}
simulator_selectwrite{}

Voice

Voice: 4 methods.

Call any of these with bandicot rpc, the method name and its params as JSON. Add --yes to anything that is not a read.

Voice methods
MethodEffectParams
voice_startoutside{session_id?, engine?, language?}
voice_stopwrite{}
voice_forgetwrite{relearn?}
voice_mutewrite{muted}

Team roster

Team roster: 5 methods.

Call any of these with bandicot rpc, the method name and its params as JSON. Add --yes to anything that is not a read.

Team roster methods
MethodEffectParams
team_snapshotread{}
team_roster_savewrite{members:[{id, name, handle, email, role, status, hue}]}
team_agent_assignwrite{agent_id, owner_id}
team_agent_runspends{agent_id, text|prompt, session_id?, title?}
team_syncread{}

Team channels

Team channels: 25 methods.

Call any of these with bandicot rpc, the method name and its params as JSON. Add --yes to anything that is not a read.

Team channels methods
MethodEffectParams
team_channel_snapshotread{}
team_channel_set_nameoutside{..}
team_channel_createoutside{..}
team_channel_inviteoutside{..}
team_channel_revoke_inviteoutside{..}
team_channel_joinoutside{..}
team_channel_cancel_joinoutside{..}
team_channel_sendoutside{..}
team_channel_channel_createoutside{..}
team_channel_channel_renameoutside{..}
team_channel_channel_archiveoutside{..}
team_channel_removeoutside{..}
team_channel_forgetwrite{..}
team_channel_syncoutside{..}
team_channel_agent_grantoutside{..}
team_channel_approve_postoutside{..}
team_channel_discard_postwrite{..}
team_channel_exportwrite{..}
team_channel_transferoutside{..}
team_channel_devices_startoutside{..}
team_channel_devices_pairoutside{..}
team_channel_devices_checkread{..}
team_channel_devices_revokeoutside{..}
team_channel_devices_recovery_kitwrite{..}
team_channel_devices_restorewrite{..}

Your Macs and phone

Your Macs and phone: 12 methods.

Call any of these with bandicot rpc, the method name and its params as JSON. Add --yes to anything that is not a read.

Your Macs and phone methods
MethodEffectParams
remote_listread{}
remote_settingswrite{approvals?, run?, reach?, chats?}
remote_captainwrite{}
remote_readread{method:session_list|session_read, params?, member_id?}
remote_runspends{member_id, automation_id, label?}
remote_answerspends{token, decision, proof?}
remote_promptspends{member_id, text, session_id?}
remote_stopoutside{member_id, run}
remote_deviceoutside{key, push_to?, push_key?}
remote_poweroutside{change:sleep|wake}
reachable_getread{}
reachable_setwrite{reachable?, let_sleep?, lid_closed?}

Setup files and hooks

Setup files and hooks: 8 methods.

Call any of these with bandicot rpc, the method name and its params as JSON. Add --yes to anything that is not a read.

Setup files and hooks methods
MethodEffectParams
setup_statusread{}
setup_planread{path?, overwrite?, prune?}
setup_receiptsread{}
setup_applywrite{fingerprint, allow_sensitive?}
setup_undowrite{receipt?, overwrite?}
setup_exportwrite{dir}
hooks_user_statusread{}
hooks_user_trustwrite{}

Questions

Where does the method list come from?

From the engine's own catalog, which bandicot methods prints. This page is regenerated from it.