strawpoll-cliCreate and manage StrawPoll polls, meeting polls, and ranking polls from the terminal using the strawpoll CLI. Use when the user wants to create polls, view...
Install via ClawdBot CLI:
clawdbot install dedene/strawpoll-cliCommand-line interface for the StrawPoll API v3. Supports three poll types: multiple-choice, meeting (availability), and ranking.
# Homebrew (macOS/Linux)
brew install dedene/tap/strawpoll
# Or via Go
go install github.com/dedene/strawpoll-cli/cmd/strawpoll@latest
An API key is required. Get one at strawpoll.com/account/settings.
# Store in system keyring (interactive prompt)
strawpoll auth set-key
# Or use environment variable (for scripts/CI)
export STRAWPOLL_API_KEY="your-key-here"
# Verify setup
strawpoll auth status
# Create a poll
strawpoll poll create "Favorite language?" Go Rust Python TypeScript
# View poll details (accepts ID or full URL)
strawpoll poll get NPgxkzPqrn2
strawpoll poll get https://strawpoll.com/NPgxkzPqrn2
# View results with vote counts
strawpoll poll results NPgxkzPqrn2
# Delete (with confirmation)
strawpoll poll delete NPgxkzPqrn2
# Basic poll
strawpoll poll create "Best editor?" Vim Emacs "VS Code" Neovim
# With voting rules
strawpoll poll create "Pick up to 3" A B C D E \
--is-multiple-choice --multiple-choice-max 3 \
--dupcheck session --deadline 24h
# Private poll, copy URL to clipboard
strawpoll poll create "Team vote" Opt1 Opt2 --is-private --copy
# Open in browser after creation
strawpoll poll create "Quick poll" Yes No --open
# List your polls
strawpoll poll list --limit 10
# Update a poll
strawpoll poll update NPgxkzPqrn2 --title "New title" --add-option "New option"
# Reset votes (with confirmation)
strawpoll poll reset NPgxkzPqrn2
# With all-day dates
strawpoll meeting create "Team standup" \
-d 2025-03-10 -d 2025-03-11 -d 2025-03-12
# With time ranges
strawpoll meeting create "1:1 meeting" \
-r "2025-03-10 09:00-10:00" \
-r "2025-03-10 14:00-15:00" \
--tz "America/New_York" --location "Room 4B"
# Interactive wizard (no dates = launches wizard)
strawpoll meeting create "Sprint planning"
# View availability grid
strawpoll meeting results xYz123abc
# List meeting polls
strawpoll meeting list
# Create ranking poll
strawpoll ranking create "Rank these frameworks" React Vue Svelte Angular Solid
# View Borda count results
strawpoll ranking results rAnK456
# Verbose: per-position breakdown
strawpoll ranking results rAnK456 --verbose
# List ranking polls
strawpoll ranking list
All commands support three output modes:
# Default: colored table (human-readable)
strawpoll poll results NPgxkzPqrn2
# JSON: structured output for scripting
strawpoll poll results NPgxkzPqrn2 --json
# Plain: tab-separated values
strawpoll poll results NPgxkzPqrn2 --plain
# Disable colors (also respects NO_COLOR env var)
strawpoll poll results NPgxkzPqrn2 --no-color
# Get poll ID from creation
POLL_ID=$(strawpoll poll create "Vote" A B --json | jq -r '.id')
# Pipe results
strawpoll poll results "$POLL_ID" --plain | cut -f1,3
# Delete without confirmation
strawpoll poll delete "$POLL_ID" --force
# Results with participant breakdown
strawpoll poll results "$POLL_ID" --participants --json
Save preferred settings to avoid repetitive flags:
# Set defaults
strawpoll config set dupcheck session
strawpoll config set results_visibility after_vote
strawpoll config set is_private true
# View config
strawpoll config show
# Config file location
strawpoll config path
Config stored at ~/.config/strawpoll/config.yaml.
Create commands launch an interactive wizard when run in a terminal without arguments:
# Launches wizard (poll title, options, settings)
strawpoll poll create
# Launches meeting wizard (dates, times, location)
strawpoll meeting create "Team sync"
Wizards render on stderr; data output goes to stdout. In non-TTY (pipes), provide all arguments via flags.
https://, www., /polls/)2025-03-15T18:00:00Z) or duration (24h, 1h30m)YYYY-MM-DD for all-day, YYYY-MM-DD HH:MM-HH:MM for time rangesEurope/Berlin, America/New_York)strawpoll completion bash > /etc/bash_completion.d/strawpoll
strawpoll completion zsh > "${fpath[1]}/_strawpoll"
strawpoll completion fish > ~/.config/fish/completions/strawpoll.fish
See reference.md for complete flag reference for all commands.
brew install dedene/tap/strawpoll
Generated Mar 1, 2026
A project manager uses the meeting poll feature to coordinate availability for sprint planning across distributed teams. They input multiple date and time options with timezone support, then share the poll link for team members to vote on preferred slots, streamlining scheduling without back-and-forth emails.
A product owner creates ranking polls to gather stakeholder feedback on potential new features. They list options like 'User Dashboard', 'Mobile App', and 'Analytics Integration', then use the Borda count results to objectively rank preferences and inform development roadmaps.
An event organizer sets up multiple-choice polls to decide on event themes, venues, or catering options. They configure voting rules like limiting choices per voter and set deadlines, then automate result collection via JSON output for reporting to stakeholders.
A university instructor uses the CLI to create private polls for student feedback on course topics or assignment formats. They leverage the config defaults for privacy and session-based duplicate checking, then analyze results in plain format for integration into academic reports.
A marketing team automates A/B testing by scripting poll creation to gauge audience preferences for ad copy or design variants. They use the JSON output mode to pipe results into analytics dashboards, enabling rapid iteration based on real-time voter data.
Offer a basic free tier for individual users with limited polls, then charge for advanced features like high-volume API calls, custom branding, or enterprise support. Integrate with existing project management tools to upsell teams on automated workflows and analytics.
Provide consulting services to businesses for setting up automated polling workflows, such as integrating the CLI into CI/CD pipelines for developer feedback or HR systems for employee engagement surveys. Charge per project or retainer for customization and support.
Develop training courses and certification programs for professionals on using the CLI for data collection and decision-making in fields like agile development or market research. Monetize through course sales, workshops, and certification exam fees.
💬 Integration Tip
Use the JSON output mode and environment variables like STRAWPOLL_API_KEY to seamlessly integrate polling into scripts or CI/CD pipelines, automating feedback loops without manual intervention.
Remote-control tmux sessions for interactive CLIs by sending keystrokes and scraping pane output.
Command-line tool to manage Google Workspace services including Gmail, Calendar, Drive, Sheets, Docs, Slides, Contacts, Tasks, People, Groups, and Keep.
Runs shell commands inside a dedicated tmux session named claw, captures, and returns the output, with safety checks for destructive commands.
A modern text-based browser. Renders web pages in the terminal using headless Firefox.
Write robust, portable shell scripts. Use when parsing arguments, handling errors properly, writing POSIX-compatible scripts, managing temp files, running commands in parallel, managing background processes, or adding --help to scripts.
NotebookLM CLI wrapper via `node {baseDir}/scripts/notebooklm.mjs`. Use for auth, notebooks, chat, sources, notes, sharing, research, and artifact generation/download.