Skip to content

feat: adopt MiniMax-AI OSS patterns (exit codes, MCP server/annotations, batch search, tool eval)#14

Merged
Patel230 merged 3 commits into
mainfrom
feat/minimax-adoption
Jun 7, 2026
Merged

feat: adopt MiniMax-AI OSS patterns (exit codes, MCP server/annotations, batch search, tool eval)#14
Patel230 merged 3 commits into
mainfrom
feat/minimax-adoption

Conversation

@Patel230

@Patel230 Patel230 commented Jun 7, 2026

Copy link
Copy Markdown
Contributor

Verified-net-new improvements identified by scanning MiniMax-AI's open-source repos and adversarially mapping ideas onto hawk's actual source. Patterns only, no code copied (all sources MIT).

  • Exit-code taxonomy (internal/hawkerr/exitcode.go): classify errors into stable codes (auth/network/ratelimit/timeout/...) so callers branch on the failure reason instead of a bare 1; wired into cmd/hawk/main.go.
  • IsTerminal color gate: suppress ANSI/Unicode when stdout is piped (non-TTY), fixing escapes leaking into captured/JSON output; FORCE_COLOR still overrides.
  • MCP client honors isError: parseToolCallResult surfaces remote tool failures as errors the agent can self-correct on.
  • Batch web search/browse: queries[]/urls[] bounded concurrent fan-out in WebSearch and AgenticFetch; single query/url still works; adds a relevance-refusal contract to the AgenticFetch sub-agent prompt.
  • RiskLevel → MCP annotations: ToolAnnotations (readOnly/destructive hints) on the MCP server's tools/list so clients can self-throttle.
  • hawk mcp serve / hawk mcp config: run hawk as an MCP server (machinery existed but had no entrypoint) and emit the client registration JSON block.
  • Tool-call confusion-matrix eval (internal/feature/eval/toolmatrix.go): score trigger (TP/FN/FP/TN, precision/recall/F1) separately from payload accuracy; exposed via hawk eval tools.

Also: sync external/* submodules to latest origin/main, and bump external/eyrie to the merged eyrie main (efe3710) so hawk consumes the released eyrie changes.

All new code unit-tested; touched packages build, vet, and test clean.

🤖 Generated with Claude Code

Patel230 and others added 3 commits June 7, 2026 23:53
Verified-net-new improvements identified by scanning MiniMax-AI's open-source
repos and adversarially mapping ideas onto hawk's actual source. Patterns only,
no code copied (all sources MIT).

- exit-code taxonomy: internal/hawkerr/exitcode.go classifies errors into stable
  codes (auth/network/ratelimit/timeout/...) so callers can branch on the
  failure reason instead of a bare 1; wired into cmd/hawk/main.go
- IsTerminal color gate: suppress ANSI/Unicode when stdout is piped (non-TTY),
  fixing ANSI leaking into captured/JSON output; FORCE_COLOR still overrides
- MCP client honors isError: parseToolCallResult surfaces remote tool failures
  as errors the agent can self-correct on
- batch web search/browse: queries[]/urls[] concurrent fan-out (bounded) in
  WebSearch and AgenticFetch; single query/url still works; adds a
  relevance-refusal contract to the AgenticFetch sub-agent prompt
- RiskLevel -> MCP annotations: ToolAnnotations (readOnly/destructive hints) on
  the MCP server's tools/list so clients can self-throttle
- hawk mcp serve / hawk mcp config: run hawk as an MCP server (machinery existed
  but had no entrypoint) and emit the client registration JSON block
- tool-call confusion-matrix eval: internal/feature/eval/toolmatrix.go scores
  trigger (TP/FN/FP/TN, precision/recall/F1) separately from payload accuracy;
  exposed via `hawk eval tools`

All new code is unit-tested; touched packages build, vet, and test clean.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Advance the eyrie and yaad submodule pointers to the current tip of their
origin/main (the other four already matched). Picks up upstream commits that
were present on the remotes but not yet recorded in hawk's index.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Point external/eyrie at the squash-merged eyrie main containing the provider
error/image/reasoning/verify work, so hawk consumes the released eyrie changes.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@Patel230 Patel230 merged commit d45b2f0 into main Jun 7, 2026
18 checks passed
@Patel230 Patel230 deleted the feat/minimax-adoption branch June 7, 2026 19:36
Patel230 added a commit that referenced this pull request Jun 8, 2026
…ns, batch search, tool eval) (#14)

* feat: adopt MiniMax-AI OSS patterns into hawk

Verified-net-new improvements identified by scanning MiniMax-AI's open-source
repos and adversarially mapping ideas onto hawk's actual source. Patterns only,
no code copied (all sources MIT).

- exit-code taxonomy: internal/hawkerr/exitcode.go classifies errors into stable
  codes (auth/network/ratelimit/timeout/...) so callers can branch on the
  failure reason instead of a bare 1; wired into cmd/hawk/main.go
- IsTerminal color gate: suppress ANSI/Unicode when stdout is piped (non-TTY),
  fixing ANSI leaking into captured/JSON output; FORCE_COLOR still overrides
- MCP client honors isError: parseToolCallResult surfaces remote tool failures
  as errors the agent can self-correct on
- batch web search/browse: queries[]/urls[] concurrent fan-out (bounded) in
  WebSearch and AgenticFetch; single query/url still works; adds a
  relevance-refusal contract to the AgenticFetch sub-agent prompt
- RiskLevel -> MCP annotations: ToolAnnotations (readOnly/destructive hints) on
  the MCP server's tools/list so clients can self-throttle
- hawk mcp serve / hawk mcp config: run hawk as an MCP server (machinery existed
  but had no entrypoint) and emit the client registration JSON block
- tool-call confusion-matrix eval: internal/feature/eval/toolmatrix.go scores
  trigger (TP/FN/FP/TN, precision/recall/F1) separately from payload accuracy;
  exposed via `hawk eval tools`

All new code is unit-tested; touched packages build, vet, and test clean.


* chore: sync external submodules to latest origin/main

Advance the eyrie and yaad submodule pointers to the current tip of their
origin/main (the other four already matched). Picks up upstream commits that
were present on the remotes but not yet recorded in hawk's index.


* chore: bump eyrie submodule to merged main (efe3710)

Point external/eyrie at the squash-merged eyrie main containing the provider
error/image/reasoning/verify work, so hawk consumes the released eyrie changes.


---------
Patel230 added a commit that referenced this pull request Jun 8, 2026
…ns, batch search, tool eval) (#14)

* feat: adopt MiniMax-AI OSS patterns into hawk

Verified-net-new improvements identified by scanning MiniMax-AI's open-source
repos and adversarially mapping ideas onto hawk's actual source. Patterns only,
no code copied (all sources MIT).

- exit-code taxonomy: internal/hawkerr/exitcode.go classifies errors into stable
  codes (auth/network/ratelimit/timeout/...) so callers can branch on the
  failure reason instead of a bare 1; wired into cmd/hawk/main.go
- IsTerminal color gate: suppress ANSI/Unicode when stdout is piped (non-TTY),
  fixing ANSI leaking into captured/JSON output; FORCE_COLOR still overrides
- MCP client honors isError: parseToolCallResult surfaces remote tool failures
  as errors the agent can self-correct on
- batch web search/browse: queries[]/urls[] concurrent fan-out (bounded) in
  WebSearch and AgenticFetch; single query/url still works; adds a
  relevance-refusal contract to the AgenticFetch sub-agent prompt
- RiskLevel -> MCP annotations: ToolAnnotations (readOnly/destructive hints) on
  the MCP server's tools/list so clients can self-throttle
- hawk mcp serve / hawk mcp config: run hawk as an MCP server (machinery existed
  but had no entrypoint) and emit the client registration JSON block
- tool-call confusion-matrix eval: internal/feature/eval/toolmatrix.go scores
  trigger (TP/FN/FP/TN, precision/recall/F1) separately from payload accuracy;
  exposed via `hawk eval tools`

All new code is unit-tested; touched packages build, vet, and test clean.


* chore: sync external submodules to latest origin/main

Advance the eyrie and yaad submodule pointers to the current tip of their
origin/main (the other four already matched). Picks up upstream commits that
were present on the remotes but not yet recorded in hawk's index.


* chore: bump eyrie submodule to merged main (efe3710)

Point external/eyrie at the squash-merged eyrie main containing the provider
error/image/reasoning/verify work, so hawk consumes the released eyrie changes.


---------
Patel230 added a commit that referenced this pull request Jun 18, 2026
…ns, batch search, tool eval) (#14)

* feat: adopt MiniMax-AI OSS patterns into hawk

Verified-net-new improvements identified by scanning MiniMax-AI's open-source
repos and adversarially mapping ideas onto hawk's actual source. Patterns only,
no code copied (all sources MIT).

- exit-code taxonomy: internal/hawkerr/exitcode.go classifies errors into stable
  codes (auth/network/ratelimit/timeout/...) so callers can branch on the
  failure reason instead of a bare 1; wired into cmd/hawk/main.go
- IsTerminal color gate: suppress ANSI/Unicode when stdout is piped (non-TTY),
  fixing ANSI leaking into captured/JSON output; FORCE_COLOR still overrides
- MCP client honors isError: parseToolCallResult surfaces remote tool failures
  as errors the agent can self-correct on
- batch web search/browse: queries[]/urls[] concurrent fan-out (bounded) in
  WebSearch and AgenticFetch; single query/url still works; adds a
  relevance-refusal contract to the AgenticFetch sub-agent prompt
- RiskLevel -> MCP annotations: ToolAnnotations (readOnly/destructive hints) on
  the MCP server's tools/list so clients can self-throttle
- hawk mcp serve / hawk mcp config: run hawk as an MCP server (machinery existed
  but had no entrypoint) and emit the client registration JSON block
- tool-call confusion-matrix eval: internal/feature/eval/toolmatrix.go scores
  trigger (TP/FN/FP/TN, precision/recall/F1) separately from payload accuracy;
  exposed via `hawk eval tools`

All new code is unit-tested; touched packages build, vet, and test clean.

* chore: sync external submodules to latest origin/main

Advance the eyrie and yaad submodule pointers to the current tip of their
origin/main (the other four already matched). Picks up upstream commits that
were present on the remotes but not yet recorded in hawk's index.

* chore: bump eyrie submodule to merged main (efe3710)

Point external/eyrie at the squash-merged eyrie main containing the provider
error/image/reasoning/verify work, so hawk consumes the released eyrie changes.

---------
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant