Han

repository·main·Indexed 41 days ago

https://github.com/thebushidocollective/han

A CLI tool providing quality gates and engineering intelligence for AI coding agents, automating code validation through linting, testing, and type checking. The platform includes a three-layer memory architecture for session continuity and team knowledge sharing, as well as a certificate distribution server (han-cert-server v1.0.0) for managing short-lived Let's Encrypt certificates.

Tokens
1.3M
Snippets
3.3K
Records
4.5K
Agent score
47%

What's inside Han

  1. What is covered by the BDD plugin

    main

    The BDD plugin provides specialized skills and knowledge areas for implementing Behavior-Driven Development within your workflow:

    • bdd-principles: Core BDD concepts, philosophy, and the Three Amigos practice.
    • bdd-scenarios: Guidance on writing effective scenarios, examples, and specifications.
    • bdd-patterns: Common BDD patterns, anti-patterns, and best practices.
    • bdd-collaboration: Techniques for facilitating BDD workshops and fostering team collaboration.
  2. Use the junit-parameterized skill

    main

    The junit-parameterized skill is designed for mastering JUnit parameterized tests using various value sources and test factories. It provides coverage for essential concepts, patterns, and best practices in professional JUnit development.

    Note: This skill is user-invocable: false, meaning it is intended to be triggered by the system to assist with JUnit-related tasks rather than being called directly by a user command.

    Allowed Tools:

    • Read
    • Write
    • Edit
    • Bash
    • Glob
    • Grep
  3. Understand the Han Website Architecture

    main

    The Han website is a Next.js static site that serves as the primary discovery interface for the plugin marketplace. It provides search functionality, category browsing, and dynamic documentation rendering for all plugins.

    Technology Stack

    • Framework: Next.js 16 (App Router, static export)
    • UI Library: React 19
    • Styling: Tailwind CSS 4.1
    • Search: Fuse.js 7.1 (client-side fuzzy search)
    • Markdown: react-markdown 10.1 + remark-gfm 4.0
    • Syntax Highlighting: rehype-highlight 7.0 (highlight.js 11.11)
    • Build Tool: Bun
    • Testing: Playwright 1.56
  4. When to use the cpp-smart-pointers skill

    main

    The cpp-smart-pointers skill is designed for tasks involving modern C++ memory management. Use this skill when you need to:

    • Manage dynamically allocated memory using RAII (Resource Acquisition Is Initialization) patterns.
    • Work with polymorphic objects within containers.
    • Prevent memory leaks and dangling pointers.
    • Implement exception-safe code.
    • Create factory patterns or complex object hierarchies.
    • Manage shared resources via reference counting.
    • Break circular dependencies using weak references.
    • Wrap C-style APIs to ensure automatic cleanup.
    • Teach or learn modern C++ memory management principles.
  5. Functional Programming plugin skills

    main

    The functional-programming plugin is organized into several skill sets that cover different aspects of the paradigm:

    • fp-fundamentals: Focuses on core FP concepts such as pure functions, immutability, and higher-order functions.
    • fp-patterns: Covers common FP patterns and techniques.
    • fp-languages: Explores FP implementations across various languages like JavaScript, Python, Haskell, etc.
  6. Configure Checkstyle for Java projects

    main

    Use the checkstyle-configuration skill to manage Checkstyle for Java projects. This involves configuring XML configuration files, defining custom checks, setting properties, and setting up modules to maintain code quality and ensure reliable software delivery.

    Key areas of focus:

    • XML Configuration: Setting up and customizing behavior via XML.
    • Module Setup: Organizing checks and properties within the project structure.
    • Integration: Preparing for CI/CD and team collaboration.
    • Customization: Implementing custom plugins, extensions, and behavior modifications.
  7. Features of the esbuild plugin

    main

    The esbuild plugin provides the following capabilities:

    • Automatic package manager detection: Automatically detects whether your project uses npm, yarn, pnpm, or bun.
    • Build validation on Stop hook: Validates that the esbuild build process finished successfully before the workflow proceeds.
    • Build caching: Caches successful builds to prevent redundant execution and speed up subsequent runs.
  8. When to use the effect-core-patterns skill

    main

    The effect-core-patterns skill is intended for developers who need to:

    • Build type-safe applications using the Effect framework.
    • Create, compose, and manage pipelines of effectful operations.
    • Handle errors and side effects explicitly and safely.
    • Work with asynchronous operations, promises, and callback-based APIs.
    • Leverage functional programming patterns to ensure compile-time safety and maintainable code.
  9. Use Rspec skills in your workflow

    main

    Once the Rspec plugin is installed and enabled, Han (via Claude) automatically applies specialized expertise to Ruby projects using behavior-driven development patterns. The plugin provides the following skills:

    • Rspec Advanced
    • Rspec Fundamentals
    • Rspec Mocking

    These skills allow the agent to write idiomatic code, suggest appropriate architectures, catch common anti-patterns, and provide framework-specific guidance.

  10. Features of the Webpack plugin

    main

    The Webpack plugin provides the following capabilities:

    • Automatic package manager detection: Automatically identifies if you are using npm, yarn, pnpm, or bun.
    • Build validation on Stop hook: Uses Han's Stop hooks to validate that Webpack builds have completed successfully before allowing Claude to finish its task.
    • Build caching: Caches successful builds to prevent redundant execution of the build process.
  11. Features of the Rollup plugin

    main

    The Rollup plugin provides the following capabilities:

    • Automatic package manager detection: Supports npm, yarn, pnpm, and bun.
    • Build validation on Stop hook: Validates that Rollup builds are successful before the workflow concludes.
    • Build caching: Caches successful builds to prevent redundant execution and save time.