hawk

module
v0.1.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jun 25, 2026 License: MIT

README

AI Coding Agent for Your Terminal

AI coding agent for your terminal — built for developers, not teams or enterprises (yet).

Go License CI Release GoDoc

Quick Start · Features · Usage · Skills · Tools · Architecture · Contributing


Why hawk

hawk is an AI-powered coding agent that lives in your terminal. It reads your codebase, writes and edits files, runs tests, and manages git — all through natural language. Unlike IDE-bound tools, hawk works over SSH, in containers, and on any machine with a shell.

Developer path: one machine, keychain credentials, local memory. Run hawk path to check readiness.

  • Model-agnostic — works with Claude, GPT-4, Gemini, DeepSeek, Ollama, and 75+ models through eyrie
  • Zero CGO — single static binary, cross-compiled for linux/darwin/windows on amd64/arm64
  • Privacy-first — your code never leaves your machine except to the LLM API you choose
  • Extensible — 40+ built-in tools, MCP server support, community skill registry

Status

Hawk is in active development. Contributor source builds are the primary path today while we keep hardening the product in the open. Tagged releases and install assets may exist for validation, but they are not the recommended first path yet.

Follow GrayCode for progress. When Hawk is ready to try, we will announce it on graycodeai.gateandtech.in.

Quick Start (contributors — from source)

git clone https://github.com/GrayCodeAI/hawk && cd hawk
make setup   # clones required support repos into external/ and syncs go.work
go build -o hawk ./cmd/hawk
./hawk

# First run — paste API key in /config (stored in macOS Keychain / Linux keyring)
# Verify readiness
./hawk path

See docs/SECURITY-DEVELOPER.md for the credential model. Do not put API keys in shell env or .env for hawk.

Optional for contributors:

go install github.com/GrayCodeAI/hawk@latest   # only after Hawk and support repo tags are published

Features

Interactive Terminal UI

Built with Bubble Tea for a smooth, keyboard-driven experience with vim-style keybindings.

40+ Built-in Tools

Category Tools
Files Read, Write, Edit, LS, Glob, Grep
Shell Bash, PowerShell, CronCreate, CronDelete
Git GitCommit, SmartCommit, EnterWorktree, ExitWorktree
Web WebFetch, WebSearch, CodeSearch
Tasks TodoWrite, TaskCreate, TaskList, TaskUpdate
Code LSP diagnostics, CodeSearch, NotebookEdit, SQL (read-only DB exploration)
MCP ListMcpResources, ReadMcpResource

Multi-Agent Mission Mode (optional)

For larger tasks, decompose work into parallel feature branches (power-user / future team workflows):

hawk mission "Add auth, rate limiting, and logging"

Each sub-agent runs in its own git worktree with full autonomy.

Community Skills

Discover and install modular instruction packages for specialized workflows:

hawk skills search api        # Search community registry
hawk skills install go-review # Install from GitHub
hawk skills audit             # Security scan installed skills

Permission Center

hawk now exposes one visible permission command center in chat:

/permissions
/permissions tier <scout|builder|operator|autonomous>
/permissions sandbox <strict|workspace|off>
/permissions mode <default|edits|bypass|dontask|plan>
/permissions allow <rule>
/permissions deny <rule>
/permissions rules
/permissions reset
/permissions save [project|global]

The model is:

  • Tier controls autonomy:
    • Scout
    • Builder
    • Operator
    • Autonomous
  • Sandbox controls the execution boundary:
    • strict
    • workspace
    • off
  • Rules control explicit allow/deny exceptions.

For normal chat usage, /permissions is the main control surface. Older permission chat commands have been removed in favor of this single flow.

MCP & LSP Support

Connect external tools via Model Context Protocol and get code intelligence through Language Server Protocol. MCP also supports a WebSocket transport (opt-in) in addition to stdio/HTTP.

Watch Mode (AI-comment loop)

hawk --watch watches your tree for AI! (do it now) and AI? (answer my question) comments and acts on them automatically — leave a directive in code, save, and hawk responds. Off by default; enabled via the --watch flag.

CI / GitHub Action

A bundled GitHub Action (.github/actions/hawk) runs hawk in your pipeline: interactive mode on @hawk mentions in issue/PR comments, automation mode on labeled issues/PRs, and skill dispatch when a prompt begins with / (e.g. /code-review).

Messaging Gateways (opt-in)

The daemon exposes Telegram, Discord, and Slack gateways so you can chat with hawk from your messaging app. Disabled by default; enabled per-channel via daemon config.

AST Repo-Map & Codebase Analysis

An AST-based repository map (internal/context/repomap) gives the model a structural overview of your code. On first run, hawk can auto-analyze the codebase to seed context (default-off, opt-in).

Auto-Lint / Auto-Fix Cycle

After edits, hawk can run the matching linter and iterate on fixes (bounded retries) before handing back. Opt-in; preserves existing behavior when disabled.

Image / Multimodal Context

Feed screenshots and images into the conversation for vision-capable models (internal/engine/vision.go).

Plan & Explore Sub-Agents

Read-only sub-agent modes: plan decomposes a task into steps, explore investigates the codebase with a configurable thoroughness budget (quick / medium / very-thorough).

Conventional-Commit Generation

SmartCommit and the diff summarizer generate Conventional Commit messages from your staged changes.

Durable Workflows & Approval Gates

LangGraph-style durable workflows with named, resumable step checkpoints and optional human-in-the-loop approval gates that persist the gate decision.

Structured Output

Request JSON-Schema-constrained responses; results are validated against the schema and retried once on mismatch.

YAML Agents & Tasks

Define personas and eval tasks in YAML (in addition to markdown personas), including per-agent display color and lifecycle hooks.

IT-Managed Policy Tier

An optional, non-excludable org-policy rule tier (highest precedence) with HTML-comment stripping of rule files for IT-managed deployments.

Usage

Interactive Mode

hawk                              # Start REPL
hawk -r abc123                    # Resume session
hawk -c                           # Continue latest session
hawk --provider openai --model gpt-4o  # Override provider

Permission Examples

# Inside the TUI
/permissions
/permissions tier builder
/permissions sandbox workspace
/permissions mode plan
/permissions allow Bash(git:*)
/permissions deny Bash(rm -rf *)
/permissions save project

Non-Interactive Mode

hawk -p "explain this repo"                    # Print response, exit
hawk -p "fix tests" --allowed-tools "Bash(go test:*) Edit Read"
hawk -p "review this repo" --permission-mode plan --sandbox workspace
hawk exec "refactor auth module"               # Full engine, non-interactive
hawk exec --auto full "add error handling"     # Full autonomy
hawk exec --worktree "add rate limiting"       # Isolated branch
hawk exec --agent reviewer "review last commit" # Custom persona

Diagnostics & ecosystem

hawk path                   # Developer path readiness (setup + security + sandbox)
hawk doctor                  # Full health report (eyrie + yaad + tok panel)
hawk ecosystem               # Ecosystem panel only
hawk yaad                    # Persistent memory graph
hawk yaad search <query>     # Search yaad memories
hawk preflight               # Quick ready-to-chat check
make path                    # Developer path verification
make smoke                   # Build + quick verification script

See docs/SECURITY-DEVELOPER.md.

See docs/ecosystem-message-flow.md for how eyrie, yaad, and tok connect during a chat session.

In the TUI: /path, /ecosystem, /yaad, /yaad search <query>, /memory (AGENTS.md).

Daemon Mode

hawk daemon start              # Background HTTP server on port 4590
hawk daemon status             # Check if running
hawk daemon stop               # Graceful shutdown

Endpoints: GET /v1/health, GET /v1/ready (dependency-aware readiness), POST /v1/chat (JSON or SSE streaming)

Mission Mode

hawk mission "Add auth, rate limiting, and logging"
hawk mission --workers 6 "Refactor into microservices"
hawk mission --dry-run "What would this decompose into?"

Providers

hawk works with any LLM provider. Developer path: paste keys in /config (stored in OS keychain) — not shell env or .env. Use hawk credentials status to verify.

Provider ID Key (via /config)
Anthropic anthropic ANTHROPIC_API_KEY
OpenAI openai OPENAI_API_KEY
Google Gemini gemini GEMINI_API_KEY
OpenRouter openrouter OPENROUTER_API_KEY
xAI (Grok) grok XAI_API_KEY
Z.AI z-ai ZAI_API_KEY
CanopyWave canopywave CANOPYWAVE_API_KEY
OpenCode Go opencodego OPENCODEGO_API_KEY
Kimi (Moonshot) kimi MOONSHOT_API_KEY
Xiaomi (MiMo) Pay-as-you-go xiaomi_mimo_payg XIAOMI_MIMO_PAYG_API_KEY
Xiaomi (MiMo) Token Plan xiaomi_mimo_token_plan XIAOMI_MIMO_TOKEN_PLAN_API_KEY (pick region in /config)
Ollama (local) ollama OLLAMA_BASE_URL (no API key)

Provider routing, model resolution, and retries are handled by eyrie. For deployment-aware routing, set "deployment_routing": true in .hawk/settings.json or export HAWK_DEPLOYMENT_ROUTING=true. Hawk will route canonical model IDs through Eyrie's deployment catalog, so new models can be exposed by refreshing the catalog instead of changing Hawk. In chat, run /refresh-model-catalog to fetch the latest deployment-aware catalog into ~/.eyrie/model_catalog.json.

Architecture

hawk is built in Go with a modular, layered architecture:

hawk/
├── cmd/                    # CLI entry point (Cobra + Bubble Tea TUI)
├── internal/
│   ├── engine/             # Agent loop, compaction, self-improvement
│   ├── tool/               # 40+ built-in tools with safety layer
│   ├── config/             # Settings, budget tracking, agent personas
│   ├── session/            # Persistence (JSONL, WAL, checkpoints)
│   ├── api/                # HTTP API server
│   ├── daemon/             # Background HTTP/SSE server
│   ├── sandbox/            # Command isolation (landlock, seccomp, docker)
│   ├── permissions/        # User approval system with auto-learning
│   ├── hooks/              # Event-driven plugin system
│   ├── mcp/                # Model Context Protocol client
│   ├── intelligence/       # Code intelligence (repomap, memory, planner)
│   ├── multiagent/         # Mission orchestration, parallel execution
│   ├── observability/      # Analytics, metrics, logging, tracing
│   ├── resilience/         # Circuit breaker, rate limiting, retries
│   ├── feature/            # eval, fingerprint, voice, IDE integration
│   ├── bridge/             # External bridges (sight, inspect, sessioncapture)
│   ├── provider/           # Provider routing
│   └── system/             # Bus, cron, retention, shutdown
├── docs/                   # Architecture, security, integration docs
└── testdata/               # Test fixtures

Ecosystem

hawk integrates these GrayCodeAI repos in three layers:

  • Primary product: hawk is the only end-user product surface in this ecosystem.
  • Support engines mounted by Hawk: eyrie, yaad, tok, trace, sight, inspect. Hawk imports or shells into these engines behind its own command surface.
  • Shared foundation: hawk-core-contracts holds the neutral cross-repo types that keep the engines independent from Hawk internals.

Local development uses:

  • go.mod modules: pinned requirements for the support engines and hawk-core-contracts
  • External checkout + go.work: clone support repos under external/<repo>; go.work maps the module paths to those local checkouts
  • Submodules in this repo: the same external layout is pinned under external/ for reproducible CI and multi-repo work

Cross-repo contracts now live in github.com/GrayCodeAI/hawk-core-contracts so support repos do not depend on Hawk internals. The old hawk/shared/types path has been removed; use hawk-core-contracts/types for shared severity and finding contracts.

Current contract packages:

  • hawk-core-contracts/types — severity, findings
  • hawk-core-contracts/review — normalized review findings, comments, stats, results
  • hawk-core-contracts/verify — normalized verification findings, stats, reports
  • hawk-core-contracts/tools — tool call/result contracts
  • hawk-core-contracts/events — normalized tool/trace events
  • hawk-core-contracts/policy — permission and policy verdict contracts

You may keep a personal parent go.work that lists alternate clones on disk for multi-repo development.

Component Repository Purpose
hawk This repo AI coding agent
eyrie GrayCodeAI/eyrie LLM provider runtime
sight GrayCodeAI/sight Diff-based code review (hawk sight)
inspect GrayCodeAI/inspect Site audit library
tok GrayCodeAI/tok Tokenizer & compression
yaad GrayCodeAI/yaad Graph-based memory
trace GrayCodeAI/trace Session capture and replay engine mounted as hawk trace ...
hawk-core-contracts GrayCodeAI/hawk-core-contracts Shared contracts and neutral cross-repo vocabulary

For the consolidated repo map and the current-vs-proposed architecture diagrams, see docs/architecture/hawk-current-vs-proposed.md.

Development

Prerequisites

  • Go 1.26+

Build & Test

go build ./cmd/hawk           # Build binary
go test -race ./...           # Run all tests with race detector
make ci                       # Run full CI suite (lint, test, security)
make cover                    # Generate coverage report

Project Structure

hawk follows Go conventions: cmd/ for entry points, internal/ for private code, tests alongside source files. See docs/architecture.md for details.

Contributing

We welcome contributions! Please see CONTRIBUTING.md for development setup, commit conventions, and the PR process.

Quick start:

  1. Fork and create a branch: git checkout -b feat/short-description
  2. Make changes in small, focused commits
  3. Run make ci locally
  4. Open a pull request

Use Conventional Commits for commit messages — release-please uses them for versioning.

License

MIT — see LICENSE for details.

© 2026 GrayCode AI

Directories

Path Synopsis
cmd
compat-test command
compat-test reads compatibility-matrix.json and runs basic compatibility checks across the listed components.
compat-test reads compatibility-matrix.json and runs basic compatibility checks across the listed components.
hawk command
internal
acp
Package acp implements an Agent Client Protocol (ACP) server for hawk, exposing the agent over newline-delimited JSON-RPC 2.0 on stdio so editors (e.g.
Package acp implements an Agent Client Protocol (ACP) server for hawk, exposing the agent over newline-delimited JSON-RPC 2.0 on stdio so editors (e.g.
autoinit
Package autoinit performs a one-time, automatic codebase-analysis pass the first time hawk runs in a project that has no context files (AGENTS.md / HAWK.md / CLAUDE.md).
Package autoinit performs a one-time, automatic codebase-analysis pass the first time hawk runs in a project that has no context files (AGENTS.md / HAWK.md / CLAUDE.md).
bridge/sessioncapture
Package sessioncapture provides terminal context capture with delta-based tracking.
Package sessioncapture provides terminal context capture with delta-based tracking.
bridge/trace
Package tracebridge provides a Go library bridge that wraps trace's functionality for use by hawk, replacing the subprocess-based approach.
Package tracebridge provides a Go library bridge that wraps trace's functionality for use by hawk, replacing the subprocess-based approach.
cmdhistory
Package cmdhistory implements a structured command history store using SQLite.
Package cmdhistory implements a structured command history store using SQLite.
config
Package validator provides config validation utilities.
Package validator provides config validation utilities.
container
Package container provides Docker container lifecycle management for hawk's sandboxed execution environments.
Package container provides Docker container lifecycle management for hawk's sandboxed execution environments.
context
Package context provides hierarchical context discovery for hawk.
Package context provides hierarchical context discovery for hawk.
context/repomap
Package repomap is the prompt-injection shim that produces a token-budgeted repository overview for hawk's context layer.
Package repomap is the prompt-injection shim that produces a token-budgeted repository overview for hawk's context layer.
daemon
Package daemon provides a Telegram gateway for hawk.
Package daemon provides a Telegram gateway for hawk.
deps
Package deps documents the dependency injection pattern used across hawk.
Package deps documents the dependency injection pattern used across hawk.
engine
This file re-exports symbols from the agent sub-package so that existing callers of engine.SubAgentMode, engine.NewSubAgentBudget, etc.
This file re-exports symbols from the agent sub-package so that existing callers of engine.SubAgentMode, engine.NewSubAgentBudget, etc.
engine/agent
Package agent is the namespace for sub-agent orchestration types.
Package agent is the namespace for sub-agent orchestration types.
engine/code
Package code provides code-aware features: context extraction, lenses, actions, and explainer.
Package code provides code-aware features: context extraction, lenses, actions, and explainer.
engine/compact
Package compact provides compaction strategies, types, and helpers for context-window management.
Package compact provides compaction strategies, types, and helpers for context-window management.
engine/control
Package control provides engine control-flow safety types — loop detection, stall detection, and backtracking.
Package control provides engine control-flow safety types — loop detection, stall detection, and backtracking.
engine/cost
Package cost provides cost tracking, optimisation, and display for the hawk engine.
Package cost provides cost tracking, optimisation, and display for the hawk engine.
engine/ctxmgr
Package ctxmgr is the namespace for context budget, decay, packing, providers, visualisation, and read-only context.
Package ctxmgr is the namespace for context budget, decay, packing, providers, visualisation, and read-only context.
engine/diff
Package diff is the Stage-1 namespace for diff sandbox, staging, preview, summariser, test selector, and 3-way merge.
Package diff is the Stage-1 namespace for diff sandbox, staging, preview, summariser, test selector, and 3-way merge.
engine/docs
Package docs provides documentation generation, external docs fetching, and doc updating types.
Package docs provides documentation generation, external docs fetching, and doc updating types.
engine/errs
Package errs provides error context enrichment, grouping, learning, patterns, and recovery for the hawk engine.
Package errs provides error context enrichment, grouping, learning, patterns, and recovery for the hawk engine.
engine/git
Package git provides git-context enrichment and remote-forge integration.
Package git provides git-context enrichment and remote-forge integration.
engine/intelligence
Package intelligence is the Stage-1 namespace for intent classification, capabilities, language support, tool selection.
Package intelligence is the Stage-1 namespace for intent classification, capabilities, language support, tool selection.
engine/io
Package io provides clipboard, AI watcher, file watcher, and cron scheduler types.
Package io provides clipboard, AI watcher, file watcher, and cron scheduler types.
engine/lifecycle
Package lifecycle is the Stage-1 namespace for session lifecycle, limits, timeouts, and sleep-time operations.
Package lifecycle is the Stage-1 namespace for session lifecycle, limits, timeouts, and sleep-time operations.
engine/memory
Package memory provides knowledge, experience, and memory consolidation types.
Package memory provides knowledge, experience, and memory consolidation types.
engine/observability
Package observability is the Stage-1 namespace for profiling, debug recording, structured logging, feedback.
Package observability is the Stage-1 namespace for profiling, debug recording, structured logging, feedback.
engine/planning
Package planning is the Stage-1 namespace for task planning, decomposition, goals, and suggested tasks.
Package planning is the Stage-1 namespace for task planning, decomposition, goals, and suggested tasks.
engine/project
Package project is the Stage-1 namespace for project analysis, snapshots, impact analysis, dep updates, migrations, releases.
Package project is the Stage-1 namespace for project analysis, snapshots, impact analysis, dep updates, migrations, releases.
engine/prompt
Package prompt provides prompt-construction and prompt-optimisation types.
Package prompt provides prompt-construction and prompt-optimisation types.
engine/retry
Package retry provides retry-queue and smart-retry types for the engine package.
Package retry provides retry-queue and smart-retry types for the engine package.
engine/review
Package review is the Stage-1 namespace for self-review / critique / quality scoring types in package engine.
Package review is the Stage-1 namespace for self-review / critique / quality scoring types in package engine.
engine/scaffold
Package scaffold is the Stage-1 namespace for scaffolding, recipes, patterns, skills, and few-shot types.
Package scaffold is the Stage-1 namespace for scaffolding, recipes, patterns, skills, and few-shot types.
engine/search
Package search provides URL scraping, issue search, and research agent types.
Package search provides URL scraping, issue search, and research agent types.
engine/session
Package session is the Stage-1 namespace for session-lifecycle types in package engine.
Package session is the Stage-1 namespace for session-lifecycle types in package engine.
engine/streaming
Package streaming is the Stage-1 namespace for response caching, formatting, stream optimisation, thinking protocol, and steering.
Package streaming is the Stage-1 namespace for response caching, formatting, stream optimisation, thinking protocol, and steering.
engine/token
Package token is the Stage-1 namespace for token-related types and functions in package engine.
Package token is the Stage-1 namespace for token-related types and functions in package engine.
engine/validation
Package validation is the Stage-1 namespace for generated-code validation, schema validation, test loops, and lint loops.
Package validation is the Stage-1 namespace for generated-code validation, schema validation, test loops, and lint loops.
engine/workflow
Package workflow is the Stage-1 namespace for workflow + workspace + trajectory types in package engine.
Package workflow is the Stage-1 namespace for workflow + workspace + trajectory types in package engine.
env
feature/ide
Package ide provides IDE integration hints and metadata.
Package ide provides IDE integration hints and metadata.
feature/shellmode
Package shellmode implements the ! prefix for direct shell command execution in the REPL input, bypassing the LLM entirely.
Package shellmode implements the ! prefix for direct shell command execution in the REPL input, bypassing the LLM entirely.
feature/taste
Package taste implements a learning system that observes user coding preferences and builds a style profile over time to improve agent output alignment.
Package taste implements a learning system that observes user coding preferences and builds a style profile over time to improve agent output alignment.
hooks/audit
Package audit provides waste-detection detectors for agent transcripts.
Package audit provides waste-detection detectors for agent transcripts.
intelligence/planner
Package planner implements structured planning that generates artifacts before coding begins.
Package planner implements structured planning that generates artifacts before coding begins.
intelligence/repomap
api_scanner.go discovers HTTP endpoints in a project by detecting the framework (Chi, net/http, Gin, Echo, Gorilla mux, or Fiber) and extracting route declarations into an APIMap.
api_scanner.go discovers HTTP endpoints in a project by detecting the framework (Chi, net/http, Gin, Echo, Gorilla mux, or Fiber) and extracting route declarations into an APIMap.
jsonc
Package jsonc is a minimal JSON-with-Comments (JSONC) parser.
Package jsonc is a minimal JSON-with-Comments (JSONC) parser.
lint
Package lint provides a per-language linter/auto-fix cycle that can be invoked after hawk writes or edits a file.
Package lint provides a per-language linter/auto-fix cycle that can be invoked after hawk writes or edits a file.
localize
Package localize implements hierarchical fault localization inspired by OpenAutoCoder/Agentless.
Package localize implements hierarchical fault localization inspired by OpenAutoCoder/Agentless.
lsp
Package lsp provides a Language Server Protocol client for hawk.
Package lsp provides a Language Server Protocol client for hawk.
mcp
mention
Package mention implements @-prefixed file mentions in prompt input, enabling users to reference project files that get auto-included as context.
Package mention implements @-prefixed file mentions in prompt input, enabling users to reference project files that get auto-included as context.
multiagent
Package mission provides multi-feature parallel execution for hawk.
Package mission provides multi-feature parallel execution for hawk.
observability/logger
Package logger provides structured logging with levels.
Package logger provides structured logging with levels.
observability/metrics
Package metrics provides basic metrics collection (counters, timers, gauges).
Package metrics provides basic metrics collection (counters, timers, gauges).
observability/oteltrace
Package trace provides Langfuse tracing integration for LLM observability.
Package trace provides Langfuse tracing integration for LLM observability.
permissions
verdict.go: a unified PermissionVerdict type that consolidates the outcome shape across all permission subsystems (guardian, rules DSL, boundary checker, tool dispatcher, hooks, etc.).
verdict.go: a unified PermissionVerdict type that consolidates the outcome shape across all permission subsystems (guardian, rules DSL, boundary checker, tool dispatcher, hooks, etc.).
profile
Package profile provides runtime profiling helpers.
Package profile provides runtime profiling helpers.
prompt
Package prompt provides the system prompt for hawk.
Package prompt provides the system prompt for hawk.
prompts
Package prompts manages workspace context for hawk sessions.
Package prompts manages workspace context for hawk sessions.
provider/routing
Package routing provides model routing and health checking.
Package routing provides model routing and health checking.
providers
Package providers catalogs the AI coding agents that hawk can be invoked from.
Package providers catalogs the AI coding agents that hawk can be invoked from.
recipe
Package recipe also provides declarative provider configuration.
Package recipe also provides declarative provider configuration.
resilience
Package circuit provides a circuit breaker pattern for resilience.
Package circuit provides a circuit breaker pattern for resilience.
resilience/health
Package health provides health check and readiness probe support.
Package health provides health check and readiness probe support.
resilience/ratelimit
Package ratelimit provides token bucket rate limiting.
Package ratelimit provides token bucket rate limiting.
resilience/retry
Package retry provides configurable retry logic with exponential backoff.
Package retry provides configurable retry logic with exponential backoff.
rules
Package rules provides import/export of AI coding rules between different tool formats (hawk, Cursor, Claude Code, Copilot, Gemini).
Package rules provides import/export of AI coding rules between different tool formats (hawk, Cursor, Claude Code, Copilot, Gemini).
safewrite
Package safewrite provides a hardened file-write helper that protects against common symlink and permission attacks.
Package safewrite provides a hardened file-write helper that protects against common symlink and permission attacks.
sandbox
Package sandbox provides sandbox mode for isolated command execution.
Package sandbox provides sandbox mode for isolated command execution.
session
session_gain.go: per-session gain tracking for compression events.
session_gain.go: per-session gain tracking for compression events.
system/shutdown
Package shutdown provides graceful shutdown handling for applications.
Package shutdown provides graceful shutdown handling for applications.
system/staleness
Package staleness detects rules/skills that are no longer actively used or that contradict observed user behavior.
Package staleness detects rules/skills that are no longer actively used or that contradict observed user behavior.
testaudit
Package testaudit provides meta-audit tests that enforce architectural invariants across the hawk codebase using go/ast analysis.
Package testaudit provides meta-audit tests that enforce architectural invariants across the hawk codebase using go/ast analysis.
tool
Package tool provides built-in tools for the hawk coding agent.
Package tool provides built-in tools for the hawk coding agent.
types
Package types provides Hawk-owned runtime types and shared compatibility aliases.
Package types provides Hawk-owned runtime types and shared compatibility aliases.
ui/icons
Package icons is hawk's centralized icon registry.
Package icons is hawk's centralized icon registry.
sarif module

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL