Stateful Skills Turn Agent Advice Into Workflows
maps directly to joelclaw skills and workflow-rig: encode setup procedures as resumable agent runbooks with state checks and human gates
course-builder PR #656 is a clean example of what Joel meant by “we have to be AI maxing.” The PR adds a Google Calendar API setup wizard as both an OpenCode skill and a Claude Code skill, then pulls in Vercel’s React and Next.js performance guidance from vercel-labs/agent-skills.
The clever bit is the shape: state detection first, then clear “agent does this” vs. “human does this” phases. The Google Calendar wizard checks for the gcloud CLI, auth, project config, enabled APIs, service accounts, credentials, env vars, and package manager state before doing anything. That turns a brittle setup doc into a resumable process an agent can actually drive.
This is the difference between “tell the agent the policy” and teach the agent the process. The PR is mostly markdown, but the markdown contains executable checks, browser handoff points, Google Workspace domain-wide delegation instructions, verification scripts, and troubleshooting paths. That’s a lot more useful than another pile of vague “best practices” bullshit.
For joelclaw, this maps straight onto skills, runbooks, and the workflow-rig. If we want agents to compound, the work needs to live as process memory: detectable state, safe next actions, human gates, verification, and portable variants for each agent runtime.
Key Ideas
- Agent skills are better when they start with state detection, not instructions.
- The Google Calendar API wizard separates agent actions from human-only browser work like Google Workspace Admin Console configuration.
- Encoding gcloud checks, env var checks, package manager detection, and verification scripts makes the setup resumable instead of one-shot.
- The same process exists in both OpenCode and Claude Code formats, which points at a future where skills need canonical source plus generated runtime adapters.
- Pulling Vercel Labs agent skills into badass-courses/course-builder treats external engineering taste as agent-operable memory.
- CodeRabbit caught real process risks in the PR, including unsafe env loading, over-broad IAM permissions, and platform-specific
base64flags.
Links
- Source: badass-courses/course-builder PR #656
- Repo: badass-courses/course-builder
- Related: Vercel Labs agent-skills
- Related: Claude Code skills
- Related: OpenCode
- Related: Google Calendar API
- Related: Google Cloud service accounts
- Related: Google Workspace domain-wide delegation
- Related: gcloud CLI
- Related: CodeRabbit