Claude Code Opus 4.5: Agentic Publishing Workflows

Table of Contents

overview

This document captures lessons learned from using Claude Code (powered by Opus 4.5) to autonomously manage org-mode publishing workflows for wal.sh. The experiment demonstrates how agentic AI can handle complex, multi-step publishing tasks with minimal human intervention.

the workflow

traditional approach

Previously, publishing involved:

  1. Write content in org-mode
  2. Run Emacs batch export manually
  3. rsync files to remote server
  4. Verify deployment succeeded

Each step required context switching and manual verification.

agentic approach

With Claude Code, the workflow becomes:

  1. Describe what you want to publish
  2. Agent handles everything: file creation, export, deployment, verification

The agent autonomously:

  • Creates or edits org files
  • Runs Emacs publish commands
  • Verifies deployment via version.json endpoint
  • Tracks work in beads issue tracker
  • Commits and pushes changes

key components

tramp-based publishing

The breakthrough was eliminating rsync entirely. Using Emacs TRAMP, org-mode can publish directly to remote servers via SSH:

(setq org-publish-project-alist
      `(("wal-sh-remote"
         :base-directory ,base-dir
         :publishing-directory "/ssh:jwalsh@www.wal.sh:/var/www/wal.sh/"
         ...)))

This means the agent can publish without any file transfer step - TRAMP handles SSH transparently.

deployment verification

Created version.json endpoint for automated deployment verification:

{
  "sha": "a1ed6c5",
  "timestamp": "2025-12-21T17:45:00Z",
  "status": "deployed"
}

The agent can fetch this after publishing to confirm the deployment succeeded.

beads issue tracking

Using beads/bd for distributed, git-backed issue tracking designed for AI agents:

bd new feature "Add CSS style prototypes" -p P2
bd close www.wal.sh-e4b
bd sync

This gives the agent a way to track multi-session work and maintain context.

what opus 4.5 enables

extended context

With ~200k token context, the agent can:

  • Hold entire publishing configuration in memory
  • Reference previous changes across the session
  • Maintain coherent multi-file edits

tool orchestration

Opus 4.5 excels at chaining tools together:

  1. Read project-config.el to understand publishing setup
  2. Create new org file for content
  3. Run gmake publish
  4. Fetch version.json to verify
  5. Create git commit with proper trailer
  6. Push and sync beads

error recovery

When publishing fails (FreeBSD path issues, missing dependencies), the agent:

  • Reads error logs
  • Identifies root cause
  • Applies fix
  • Retries operation

workflow pattern: landing the plane

Every significant change follows this pattern:

  1. Create/edit content
  2. git add && git commit with conventional commit message
  3. git pull –rebase && git push to sync
  4. bd sync to synchronize issue tracker
  5. gmake publish to deploy
  6. Verify via version.json or curl

This ensures no work is lost and deployment is always verified.

challenges and solutions

challenge: FreeBSD compatibility

  • Mermaid CLI doesn't work (puppeteer issues)
  • Solution: Disable mermaid in batch mode

challenge: CI/CD secrets

  • GitHub Actions can't SSH to deploy server
  • Solution: Use local/agent publishing, disable CI auto-trigger

challenge: Multi-session context

  • Agent loses context between sessions
  • Solution: Detailed beads issues + conversation summaries

future directions

  • Theme switching: CSS prototype system for user-selectable themes
  • Incremental publish: Only publish changed files
  • Link validation: Automated broken link detection
  • RSS feed: Automatic feed generation

conclusion

Claude Code with Opus 4.5 transforms publishing from a manual, multi-step process into a conversational workflow. The agent handles the mechanical complexity (exports, deployments, verification) while the human focuses on content.

The key insight: give the agent good infrastructure (TRAMP, version endpoints, issue tracking) and it can autonomously manage the entire publishing lifecycle.

resources

Author: Jason Walsh

jwalsh@nexus

Last Updated: 2025-12-21 17:48:39

build: 2025-12-23 09:13 | sha: e32f33e