Scripts
Create and run shell commands, multi-step workflows, and agent-driven automations.
Scripts let you define reusable commands and workflows that run inside hob. Think of them as a task runner that lives next to your agents — no separate tool required.
Opening the scripts panel
Press Cmd+Shift+R (macOS) or Ctrl+Shift+R (Windows/Linux) to toggle the Scripts panel.
Where scripts come from
hob discovers scripts from multiple sources:
| Source | Location | Shared with team? |
|---|---|---|
| Shared | .hob/tasks/ in your project | Yes |
| Private | Per-project personal config | No |
| Global | Reusable across all projects | No |
| Auto-discovered | npm scripts, Makefile, justfile | Read-only |
If your project has a package.json with scripts, a Makefile, or a justfile, hob picks them up automatically.
Creating a script
- Open the Scripts panel
- Click Add Task
- Fill in the name, command, and category
- Choose the scope — shared (committed to your repo), private, or global
- Save
Script format
Shared scripts are YAML files in .hob/tasks/:
name: Build & Test
command: npm run build && npm test
category: CI/CDMulti-step workflows
Scripts can define multiple steps that run in sequence. Each step can be a shell command or an agent prompt:
name: Deploy to staging
category: Deploy
inputs:
target:
description: Deploy target
type: string
options: ["staging", "production"]
required: true
steps:
- name: Build
run: npm run build
- name: Run tests
run: npm test
- name: Deploy
run: ./scripts/deploy.sh ${{ inputs.target }}Inputs
Scripts can declare inputs that prompt you at runtime:
inputs:
branch:
description: Branch to deploy
type: string
default: mainWhen you run the script, hob shows a dialog to fill in the values before executing.
Running a script
- Select the script in the panel
- Click Run
- If the script has inputs, fill them in
- Output appears in a terminal pane
You can view past runs and their output in the task history.