56 lines
2.2 KiB
Markdown
56 lines
2.2 KiB
Markdown
|
|
# GEMINI.md
|
||
|
|
|
||
|
|
This file provides guidance for agentic interactions within this repository, specifically for Gemini and other MCP-compliant agents.
|
||
|
|
|
||
|
|
## Agentic Context & MCP
|
||
|
|
|
||
|
|
This project is built with an **Agentic** design philosophy. It is not exclusive to any single LLM provider (like Claude).
|
||
|
|
|
||
|
|
- **MCP Support**: The system is designed to leverage the Model Context Protocol (MCP) to provide rich context and tools to agents.
|
||
|
|
- **Developer Image**: You are running within a standardized developer image (`host-uk/core` dev environment), ensuring consistent tooling and configuration.
|
||
|
|
|
||
|
|
## Core CLI (Agent Interface)
|
||
|
|
|
||
|
|
The `core` command is the primary interface for agents to manage the project. Agents should **always** prefer `core` commands over raw shell commands (like `go test`, `php artisan`, etc.).
|
||
|
|
|
||
|
|
### Key Commands for Agents
|
||
|
|
|
||
|
|
| Task | Command | Notes |
|
||
|
|
|------|---------|-------|
|
||
|
|
| **Health Check** | `core doctor` | Verify tools and environment |
|
||
|
|
| **Repo Status** | `core dev health` | Quick summary of all repos |
|
||
|
|
| **Work Status** | `core dev work --status` | Detailed dirty/ahead status |
|
||
|
|
| **Run Tests** | `core go test` | Run Go tests with correct flags |
|
||
|
|
| **Coverage** | `core go cov` | Generate coverage report |
|
||
|
|
| **Build** | `core build` | Build the project safely |
|
||
|
|
| **Search Code** | `core pkg search` | Find packages/repos |
|
||
|
|
|
||
|
|
## Project Architecture
|
||
|
|
|
||
|
|
Core is a Web3 Framework written in Go using Wails v3.
|
||
|
|
|
||
|
|
### Core Framework
|
||
|
|
|
||
|
|
- **Services**: Managed via dependency injection (`ServiceFor[T]()`).
|
||
|
|
- **Lifecycle**: `OnStartup` and `OnShutdown` hooks.
|
||
|
|
- **IPC**: Message-passing system for service communication.
|
||
|
|
|
||
|
|
### Development Workflow
|
||
|
|
|
||
|
|
1. **Check State**: `core dev work --status`
|
||
|
|
2. **Make Changes**: Modify code, add tests.
|
||
|
|
3. **Verify**: `core go test` (or `core php test` for PHP components).
|
||
|
|
4. **Commit**: `core dev commit` (or standard git if automated).
|
||
|
|
5. **Push**: `core dev push` (handles multiple repos).
|
||
|
|
|
||
|
|
## Testing Standards
|
||
|
|
|
||
|
|
- **Suffix Pattern**:
|
||
|
|
- `_Good`: Happy path
|
||
|
|
- `_Bad`: Expected errors
|
||
|
|
- `_Ugly`: Edge cases/panics
|
||
|
|
|
||
|
|
## Go Workspace
|
||
|
|
|
||
|
|
The project uses Go workspaces (`go.work`). Always run `core go work sync` after modifying modules.
|