Skip to content

feat(agents): add Mistral Vibe agent provider (F109)#376

Merged
pocky merged 1 commit into
mainfrom
feature/F109-mistral-vibe-agent-provider-integration
Jun 18, 2026
Merged

feat(agents): add Mistral Vibe agent provider (F109)#376
pocky merged 1 commit into
mainfrom
feature/F109-mistral-vibe-agent-provider-integration

Conversation

@pocky

@pocky pocky commented Jun 18, 2026

Copy link
Copy Markdown
Contributor

Summary

  • Add mistral_vibe as a new agent provider, integrating Mistral's vibe CLI into the AWF agent execution pipeline alongside the six existing providers
  • Implement MCP proxy support for Mistral Vibe via a temporary VIBE_HOME/config.toml, including user config sanitization to strip pre-existing [[mcp_servers]] entries and copy credentials before injection
  • Extend the base CLI executor with RunWithEnv to support per-provider environment variable overrides (required for VIBE_HOME isolation), and wire it through baseCLIProvider
  • Remove stale ZPM knowledge base artifacts from prior feature branches and rename CLAUDE.md to AGENTS.md for consistency with the agent-centric documentation model

Changes

Agent Provider — Mistral Vibe

  • internal/infrastructure/agents/mistral_vibe_provider.go: New MistralVibeProvider implementing ports.AgentProvider; includes Execute, ExecuteConversation, MCP injector, TOML config writer, user config sanitizer, and option validation
  • internal/infrastructure/agents/options.go: Add Mistral Vibe provider option types and constructor helpers
  • internal/infrastructure/agents/registry.go: Register mistral_vibe provider in the central provider registry

CLI Executor — Environment Support

  • internal/infrastructure/agents/cli_executor.go: Add RunWithEnv method to ExecCLIExecutor for injecting additional environment variables into subprocess commands
  • internal/infrastructure/agents/base_cli_provider.go: Add cliEnvExecutor interface, cliProviderEnv helper, and runCLIWithProviderEnv dispatcher; wire env support into both execute and executeConversation paths

Tests

  • internal/infrastructure/agents/mistral_vibe_provider_unit_test.go: Unit tests covering argument building, MCP injection, config sanitization, option validation, and output extraction
  • internal/infrastructure/agents/provider_options_test.go: Extended to cover Mistral Vibe option constructors
  • internal/infrastructure/agents/registry_test.go: Updated to assert mistral_vibe is present in the registry
  • tests/integration/cli/mistral_vibe_functional_test.go: Functional integration tests for the provider end-to-end
  • tests/integration/cli/run_agent_test.go: Extended run-agent integration tests to cover the new provider

Documentation

  • docs/user-guide/agent-steps.md: Add mistral_vibe to provider reference tables, token-logging table, and troubleshooting section
  • docs/user-guide/workflow-syntax.md: Add mistral_vibe and github_copilot to provider option table and conversation-mode notes
  • docs/user-guide/mcp-proxy.md: Document Mistral Vibe MCP integration mechanism and tool-name prefixing behavior (awf-proxy_<tool>)
  • docs/development/creating-agent-provider.md: Update provider creation guide to reflect new patterns
  • README.md: Update provider list
  • docs/README.md: Update provider count and references

Housekeeping

  • .zpm/kb/pr_feature_f102_*/, .zpm/kb/pr_feature_f103_*/, .zpm/kb/pr_feature_f105_*/, .zpm/kb/pr_feature_f106_*/, .zpm/kb/pr_feature_f107_*/: Remove stale ZPM knowledge base artifacts from merged feature branches
  • .zpm/mounts.json: Update mounts configuration
  • CLAUDE.mdAGENTS.md: Rename project instruction file
  • .gitignore: Add .codex/ to the AI assistant local config ignore list

Test plan

  • Run unit tests: go test ./internal/infrastructure/agents/...
  • Run integration tests (requires vibe binary in PATH): go test -tags=integration ./tests/integration/cli/ -run TestMistralVibe
  • Validate a workflow YAML using mistral_vibe as provider: awf validate
  • Confirm awf run correctly dispatches to the vibe binary with expected arguments

Closes #375


Generated with awf commit workflow

- `.gitignore`: Add `.codex/` to ignored directories
- `.zpm/kb/pr_feature_f102_acp_transparent_agent_server/journal.wal`: Remove stale ZPM knowledge base journal
- `.zpm/kb/pr_feature_f102_acp_transparent_agent_server/knowledge.pl`: Remove stale ZPM knowledge base facts
- `.zpm/kb/pr_feature_f103_codex_provider_jsonl_output_parity/journal.wal`: Remove stale ZPM knowledge base journal
- `.zpm/kb/pr_feature_f103_codex_provider_jsonl_output_parity/knowledge.pl`: Remove stale ZPM knowledge base facts
- `.zpm/kb/pr_feature_f105_acp_server_migration_to_coderacp_go_s/journal.wal`: Remove stale ZPM knowledge base journal
- `.zpm/kb/pr_feature_f105_acp_server_migration_to_coderacp_go_s/knowledge.pl`: Remove stale ZPM knowledge base facts
- `.zpm/kb/pr_feature_f106_canonical_agent_exchange_transcript_j/journal.wal`: Remove stale ZPM knowledge base journal
- `.zpm/kb/pr_feature_f106_canonical_agent_exchange_transcript_j/knowledge.pl`: Remove stale ZPM knowledge base facts
- `.zpm/kb/pr_feature_f107_single_core_interfaces_facade/journal.wal`: Remove stale ZPM knowledge base journal
- `.zpm/kb/pr_feature_f107_single_core_interfaces_facade/knowledge.pl`: Remove stale ZPM knowledge base facts
- `.zpm/mounts.json`: Update ZPM mounts configuration
- `CLAUDE.md`: Rename to `AGENTS.md` for multi-agent compatibility
- `README.md`: Update documentation references for Mistral Vibe provider
- `docs/README.md`: Update docs index with Mistral Vibe provider entry
- `docs/development/creating-agent-provider.md`: Add Mistral Vibe as provider example
- `docs/user-guide/agent-steps.md`: Document `mistral-vibe` agent step type
- `docs/user-guide/mcp-proxy.md`: Update MCP proxy documentation
- `docs/user-guide/workflow-syntax.md`: Add Mistral Vibe syntax examples
- `internal/infrastructure/agents/base_cli_provider.go`: Extract shared CLI provider base for reuse
- `internal/infrastructure/agents/cli_executor.go`: Add executor support for Mistral Vibe invocation
- `internal/infrastructure/agents/mistral_vibe_provider.go`: Implement Mistral Vibe agent provider (961 lines)
- `internal/infrastructure/agents/mistral_vibe_provider_unit_test.go`: Add unit tests for Mistral Vibe provider
- `internal/infrastructure/agents/options.go`: Add Mistral Vibe provider options
- `internal/infrastructure/agents/provider_options_test.go`: Add tests for Mistral Vibe provider options
- `internal/infrastructure/agents/registry.go`: Register `mistral-vibe` provider in agent registry
- `internal/infrastructure/agents/registry_test.go`: Add registry tests for Mistral Vibe provider
- `tests/integration/cli/mistral_vibe_functional_test.go`: Add functional integration tests for Mistral Vibe
- `tests/integration/cli/run_agent_test.go`: Extend run agent tests to cover Mistral Vibe provider

Closes #375
@pocky pocky marked this pull request as ready for review June 18, 2026 20:29
@pocky pocky merged commit 9265e45 into main Jun 18, 2026
5 checks passed
@pocky pocky deleted the feature/F109-mistral-vibe-agent-provider-integration branch June 18, 2026 20:30
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.

F109: Mistral Vibe Agent Provider Integration

1 participant