PHP Boy Scout
  • Projects
    go-tool-base rust-tool-base
  • Search
Navigation bar avatar
✕

    PHPBoyScout


    Always leave the codebase better than you found it
    • A manifest your CLI is generated from

      Posted on March 20, 2026

      Post thumbnail
      Post thumbnail
      TL;DR: go-tool-base’s generator doesn’t just scaffold a project once and walk away. It keeps a .gtb/manifest.yaml that describes your CLI’s command tree — names, flags, hierarchy — and regenerate rebuilds the wiring code to match it. Edit the manifest, regenerate, and the boilerplate follows. It turns CLI structure into something... [Read More]
      Tags:
      • go
      • golang
      • go-tool-base
      • code-generation
      • spec-driven
      • cli
    • Your CLI is already an AI tool

      Posted on March 19, 2026

      Post thumbnail
      Post thumbnail
      TL;DR: Making a CLI tool usable by an AI assistant normally means writing a bespoke integration for each assistant. It doesn’t have to. Every tool built on go-tool-base ships an mcp command that exposes the whole command tree over the Model Context Protocol: command names become tool names, descriptions become... [Read More]
      Tags:
      • go
      • golang
      • go-tool-base
      • ai
      • mcp
      • cli
    • Introducing go-tool-base - I got tired of reinventing the wheel

      Posted on March 18, 2026

      Post thumbnail
      Post thumbnail
      TL;DR: I kept writing the same Go CLI bootstrap code over and over: config loading, version checks, self-update, logging, auth. So I extracted it into a set of packages, used them on enough projects to be sure they were right, then forged them into a single library called go-tool-base and... [Read More]
      Tags:
      • go
      • golang
      • cli
      • go-tool-base
      • frameworks
      • open-source
    • Migrating away from Mediawiki and how to export its data

      Posted on August 19, 2020

      I like Mediawiki, it is a simple tool capable of doing a lot and can be very flexible and easy to customise. However its not always the right solution! I had a situation where we needed to migrate away from using it for a combination of security and usability reasons.... [Read More]
    • Pre-populating Neo4J using Kubernetes Init Containers and neo4j-admin import

      Posted on July 15, 2020

      Post thumbnail
      Post thumbnail
      Recently there has been an uptake in the use of Neo4j by the Data Scientists. This is a good thing! they are wanting to use the right tool for the job. However we need to run it inside our k8s cluster as a portable readable data source that has been... [Read More]
      Tags:
      • bash
      • databases
      • docker
      • kubernetes
      • neo4j
    • ← Newer Posts
    • Older Posts →
    • Email me
    • GitHub

    Matt Cockayne  •  2026  •  phpboyscout.uk  •  Edit page

    Powered by Beautiful Jekyll