Freewrite

Heavy AI infrastructure day — three parallel tracks running at once: designing the CorpusX agent team architecture, deepening the PKM system with SDLC traceability, and refining the Claude Code automation pipeline with GitLab cloud. The work is converging: spec-kit methodology, agent orchestration, and PKM are all part of the same system for building and operating complex software with minimal human overhead.

Big Things Today

  • Create CLAUDE.md and Phase 1 spawn prompts for CorpusX (agent team architecture now designed)
  • Extend skill-config.yaml with SDLC frontmatter fields (level, verified_by, verifies, status)

Conversations

AI Tooling & Claude Code

Creating an agent team prompt

Built the speckit.implement.md slash command for Claude Code. When run as /speckit.implement 001-user-management, the Lead auto-reads all spec files, spawns Backend, Frontend, and QA teammates, creates a progress.md coordination hub, gates each phase on QA sign-off, and commits after each phase. Pre-requisites: CLAUDE.md must exist, tasks.md must use [P] markers for parallel-safe tasks. → See corpusx

How many ways to trigger Claude Code

Mapped all 10 execution methods: interactive REPL, -p flag, piped stdin, shell scripts, GitHub Actions, Python/TS SDK, Hooks, Routines, CI/CD pipelines, Docker. Core pattern: everything non-interactive is built on -p or the SDK. → See claude-code-execution-methods

Plan comparison and recommendations — Claude Code Agent Teams with alt models

Claude Code Agent Teams (enabled via CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS=1, requires v2.1.32+) is designed for Anthropic models. GLM-5.1 (Zerebro) and MiniMax M2.7 work as solo Claude Code backends but their Agent Teams compatibility is unconfirmed. Decision: keep Claude Pro/Max for Agent Teams orchestration, use alt models for solo deep coding.

CorpusX — Enterprise Data Platform

CC - Agent Teams

Designed the four-phase agent team architecture for CorpusX (Thai enterprise data intelligence platform — DBD, Revenue Dept, NACC sources):

  • Phase 1: Orchestrator-Worker (schema, API, frontend shell, ingestion — independent)
  • Phase 2: Pipeline (financial data sequential: Thai GAAP mapping → scoring engine → validation)
  • Phase 3: Orchestrator-Worker (monitoring, network graph, procurement, lead gen)
  • Phase 4: Peer Review (API rate limits, PDPA compliance, AI features, billing model) CLAUDE.md must include Thai data sources, field name conventions (Thai vs English), immutable raw layer rule. → See corpusx

Enterprise data management web app feature roadmap

Clarified spec-kit methodology: three levels (inline prompt, per-feature spec file, CLAUDE.md global rules). Key practice: always start session with “Read CLAUDE.md and specs/[feature].md. Summarise in 5 bullets. Do not write code yet.” — forces Claude Code to surface its interpretation before touching files. → See corpusx | claude-code-speckit-methodology

PKM System

Note Taking — For AI Native SD

Designed SDLC traceability system for PKM. Three document categories: Knowledge (evergreen), Process artifacts (relational — V-model/RTM), Time-anchored (requirements versioned). New frontmatter fields needed: level (br/functional/technical/component), verified_by, verifies, status. RTM and V-model are generated on demand via zk queries, not maintained manually. Separate update-sdlc skill needed. → See pkm-sdlc-templates

Note Taking — General

Decision: stick with .md for all notes. Use LaTeX math syntax inside markdown ($$...$$) only where equations are needed. Pure LaTeX only for formal PDF outputs — keep a summary note in PKM linking to the .tex file. Full toolchain (zk + Claude Code + Hermes) is optimised for markdown.

Note Taking — Hugo & Quartz

Confirmed Quartz version: v4.5.2 (from jackyzha0/quartz, v4 branch).

Infrastructure & DevOps

Automating Claude with GitHub Actions (GitLab Cloud)

Explored GitLab.com cloud (vs self-hosted) for Claude CI/CD pipeline. Cloud is easier: zero setup, free 400 min/month (~50 full Claude cycles), GitLab manages runners. Only changes from self-hosted config: remove docker-network-mode: "gitlab-net", add secrets in GitLab UI. Data flow: code goes to gitlab.com servers; Claude only sends prompt + relevant snippets to Anthropic API (not full codebase). → See gitlab-ci-claude-code

Docker Compose volume file mounting

Three volume types: bind mount (./host:/container), named volume (managed by Docker, persists restarts), read-only (:ro). Single file bind mount requires host file to exist first (else Docker creates a directory). → See docker-compose-volumes

Setting max output tokens — DeepSeek-R1-Distill-Qwen-32B

Total context is 32,768 shared between input + output. Recommended: vLLM --max-model-len 32768, LiteLLM max_tokens: 8192 (leaves ~24k for input), Claude Code settings.json ~4000–8000. Note: DeepSeek recommends no system prompt but Claude Code sends one — contributes to context pressure.

Quick Lookups

Django integration with Apprise

Apprise notification library integrates cleanly into Django via signals, Celery tasks, management commands. Store URLs in settings.py. No official Django app needed — pure Python, drops right in. → See django-apprise-notifications

n8n resource consumption requirements

n8n Cloud free plan discontinued. 2026 pricing: Starter €24/mo (2,500 executions), Pro €60/mo (10,000), Business €800/mo (40,000). Community Edition self-hosted remains free — pay only server costs (~$4–10/mo on Hetzner/DigitalOcean).

Open Tasks Surfaced

  • Create CLAUDE.md for CorpusX (Thai data sources, field name conventions, immutable raw layer rule)
  • Write Phase 1 spawn prompts for CorpusX agent team
  • Create CorpusX spec files for Phase 1 (Company Search + Company Profile first)
  • Extend skill-config.yaml with SDLC fields: level, verified_by, verifies, status
  • Create 4 core SDLC templates: BR, FR, TS, Test Case
  • Build update-sdlc skill (separate from update-status)
  • Move to GitLab cloud: push project repo, add ANTHROPIC_API_KEY secret, verify Claude CI pipeline runs

Insights Worth Developing


Evening Update — 18:10 Thailand

Infrastructure & DevOps

Configuring settings.json within workspace

Mapped the full approach for restricting Claude Code to workspace-only file access. Two layers: (1) permissions.deny rules blocking Read(/**), Edit(/**), Write(/**) and absolute-path Bash commands, with allow rules for Read(./**) etc.; (2) OS-level sandbox.enabled: true for Bash process enforcement. For teams, use managed-settings.json at the OS-level path — cannot be overridden by user or project settings. Key caveat: deny rules alone are insufficient because Bash inherits the user’s full OS permissions; sandboxing is required to close that gap. → See claude-code-workspace-restriction

Jenkins alternatives comparison

Surveyed the CI/CD landscape in 2026. The main driver to leave Jenkins is TCO: upgrades are risky, plugins break, security vulnerabilities accumulate. Quick decision matrix: GitHub Actions for GitHub teams, GitLab CI/CD for all-in-one DevOps, CircleCI for build speed, TeamCity for self-hosted control, Harness for enterprise AI governance, Azure DevOps/Bitbucket Pipelines for ecosystem fit. → See jenkins-cicd-alternatives

Open Tasks Surfaced (Evening)

  • Apply workspace restriction settings.json to CorpusX project root

Insights Worth Developing (Evening)