tupelo-cli
v0.2.5
Published
Tupelo CLI for workspace and agent operations
Downloads
743
Readme
Tupelo CLI
Install (local package from this repo):
npm install -g ./packages/tupelo-cliQuick start:
tupelo login --base-url http://localhost:3000
tupelo whoami
tupelo workspace listAuth options:
- Browser login:
tupelo login --base-url <url> - API key login:
tupelo login --base-url <url> --api-key <key>
Run help:
tupelo helpCore workspace workflows:
# Create workspace + initial session
tupelo workspace create --title "My Workspace" --session-title "Chat 1"
# Send a prompt
tupelo chat send --session 123 --prompt "Summarize README.md"
# File operations
tupelo fs ls --session 123 --path uploads --long
tupelo fs write --session 123 --path notes/todo.md --content "# TODO"
tupelo file upload --session 123 --from ./local.txt --path uploads/local.txt
tupelo file download --session 123 --path uploads/local.txt --out ./downloaded.txtChat control workflows:
# Replay chat daemon events
tupelo chat events --session 123 --since 0 --timeout-sec 10
# Follow activity in near-realtime (convenience wrapper around chat events --follow)
tupelo chat watch --session 123 --since 0 --timeout-sec 300
# Interrupt active run
tupelo chat interrupt --session 123
# Respond to AskUserQuestion / tool requests
tupelo chat tool-response \
--session 123 \
--tool-use-id toolu_abc123 \
--allow \
--answers "How should I respond?=Short and concise"Workspace artifacts + discovery:
tupelo session resources --session 123 --long
tupelo session installs --session 123
tupelo workspace installs --workspace 45
tupelo workspace discovery-search --workspace 45 --query "plugin"
tupelo workspace discovery-sync --workspace 45Integrations:
tupelo integration get --workspace 45
tupelo integration set --workspace 45 --scope workspace --toolkits "github,slack"Environment secrets:
tupelo env list --workspace 45
tupelo env set --workspace 45 --key OPENAI_API_KEY --value "$OPENAI_API_KEY"
tupelo env delete --workspace 45 --key OPENAI_API_KEYNotes:
env set/env deleterequire server env encryption setup (AGENT_SDK_CREDENTIALS_ENCRYPTION_KEY).
App runtime controls:
tupelo app run \
--workspace 45 \
--port 3000 \
--command 'npm run dev' \
--cwd apps/web
tupelo app status --workspace 45 --port 3000
tupelo app stop --workspace 45 --port 3000Runtime setup + health:
tupelo session setup --session 123 --timeout-sec 240
tupelo session connect --session 123 --hide-token
tupelo session snapshot --session 123
tupelo session snapshot-reset --session 123
tupelo session show --session 123 --limit 30 --tail
tupelo workspace chat-status --workspace 45
tupelo workspace chat-status --ids 45,46 --db
tupelo workspace broker --workspace 45Share and clone:
tupelo workspace publish --workspace 45 --public true
tupelo workspace share-info --share <share-id>
tupelo workspace clone --share <share-id> --title "My Clone"Plugin export from workspace to library:
tupelo workspace plugin-export --workspace 45 --path plugins/my-plugin --scope userGlobal HTTP tuning (applies to non-stream API requests):
tupelo workspace list --http-timeout-sec 20 --http-retries 2 --http-retry-delay-ms 300Release workflow (repo maintainers):
- Version bump helper:
npm run cli:release:version -- patch - Dry-run verify:
npm run cli:release:verify - Publish:
npm run cli:release:publish -- --yes - Full runbook:
docs/tupelo-cli-release-workflow.md
Library + install lifecycle:
# Save a skill to personal library
tupelo library put --kind skill --name my-skill --body-from ./SKILL.md --scope user
# List library items
tupelo library list --scope user --kind skill
# Install / uninstall into workspace
tupelo install add --workspace 45 --type library-skill --id my-skill --scope user
tupelo install remove --workspace 45 --type library-skill --id my-skill