Skip to content

Instantly share code, notes, and snippets.

@RangerRick
Last active February 6, 2026 15:34
Show Gist options
  • Select an option

  • Save RangerRick/95a49ad2a4deb7c1ba6c347ea3fb1344 to your computer and use it in GitHub Desktop.

Select an option

Save RangerRick/95a49ad2a4deb7c1ba6c347ea3fb1344 to your computer and use it in GitHub Desktop.

Task Management with Beads

You should use Beads for tracking tasks across contexts as much as possible.

In any project where you must create tasks, sub-tasks, epics, and so-on, you are expected to use Beads unless explicitly told to use Linear. If a project does not already have a .beads directory, you MUST run bd init --stealth before performing any actions that revolve around tasks.

Quick reference:

  • bd ready - Find unblocked work
  • bd create "Title" --type task --priority 2 - Create issue
  • bd close <id> - Complete work
  • bd sync - Sync with git (run at session end)
  • bd show <id> --children - View the full task tree

For full workflow details: bd prime

Visual Design Anti-Patterns

NEVER use emoji-style icons (πŸ”΄πŸŸ πŸŸ‘πŸ”΅βšͺ) in CLI output. They cause cognitive overload.

ALWAYS use small Unicode symbols with semantic colors:

Status: β—‹ ◐ ● βœ“ ❄ Priority: ● P0 (filled circle with color)

Agent Warning: Interactive Commands

DO NOT use bd edit - it opens an interactive editor ($EDITOR) which AI agents cannot use.

Use bd update with flags instead:

bd update <id> --description "new description"
bd update <id> --title "new title"
bd update <id> --design "design notes"
bd update <id> --notes "additional notes"
bd update <id> --acceptance "acceptance criteria"

Non-Interactive Shell Commands

ALWAYS use non-interactive flags with file operations to avoid hanging on confirmation prompts.

Shell commands like cp, mv, and rm may be aliased to include -i (interactive) mode on some systems, causing the agent to hang indefinitely waiting for y/n input.

Use these forms instead:

# Force overwrite without prompting
cp -f source dest           # NOT: cp source dest
mv -f source dest           # NOT: mv source dest
rm -f file                  # NOT: rm file

# For recursive operations
rm -rf directory            # NOT: rm -r directory
cp -rf source dest          # NOT: cp -r source dest

Other commands that may prompt:

  • scp - use -o BatchMode=yes for non-interactive
  • ssh - use -o BatchMode=yes to fail instead of prompting
  • apt-get - use -y flag
  • brew - use HOMEBREW_NO_AUTO_UPDATE=1 env var

Landing the Plane (Session Completion)

When ending a work session, you MUST complete ALL steps below. Work is NOT complete until git push succeeds.

MANDATORY WORKFLOW:

  1. File issues for remaining work - Create issues for anything that needs follow-up
  2. Run quality gates (if code changed) - Tests, linters, builds
  3. Update issue status - Close finished work, update in-progress items
  4. PUSH TO REMOTE - This is MANDATORY:
    git pull --rebase
    git push
    git status  # MUST show "up to date with origin"
  5. Clean up - Clear stashes, prune remote branches
  6. Verify - All changes committed AND pushed
  7. Hand off - Provide context for next session

CRITICAL RULES:

  • Work is NOT complete until git push succeeds
  • NEVER stop before pushing - that leaves work stranded locally
  • NEVER say "ready to push when you are" - YOU must push
  • If push fails, resolve and retry until it succeeds
  • If possible, each individual task should get its own atomic commit, rather than committing the epic/plan as a single item
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment