Files

84 lines
2.8 KiB
Markdown

# CLAUDE.md
This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
## Project Overview
This is an **Eino framework** project (Go-based AI application framework by ByteDance/CloudWeGo). The repository is in its early stages.
## Build & Development Commands
```bash
# Initialize Go module (if not done)
go mod init eino-test
# Build
go build ./...
# Run
go run .
# Test all
go test ./...
# Test a single package
go test ./path/to/package/
# Test a single function
go test ./path/to/package/ -run TestFunctionName
# Lint (install golangci-lint if needed)
golangci-lint run ./...
# Tidy dependencies
go mod tidy
```
## Auto-Commit Convention
After completing each discrete subtask (file creation, feature implementation, bug fix, refactor), automatically generate a conventional commit message and commit. **Do NOT push.**
Process:
1. Stage the relevant changed files (`git add <files>`)
2. Generate a commit message following Conventional Commits format:
- `feat: <description>` for new features
- `fix: <description>` for bug fixes
- `refactor: <description>` for code refactoring
- `docs: <description>` for documentation
- `test: <description>` for test additions/changes
- `chore: <description>` for tooling/config changes
3. Commit with `git commit -m "<message>"`
4. Never run `git push` unless explicitly asked
Use a SubAgent for commit generation when the change is non-trivial, to keep the main context clean.
## Restrictions
- **Do NOT use WebSearch.** All work must rely on local code, existing documentation, and tool-provided context only.
- **Consult `ref_docs/` first** when working with Eino framework APIs, patterns, or best practices.
## Reference Documentation
Eino framework reference docs are stored in `ref_docs/`. Before writing Eino-related code, read the relevant doc(s) to ensure correct API usage and patterns.
| Topic | Path |
|---|---|
| Chain & Graph Orchestration | `ref_docs/core_modules/chain_and_graph_orchestration/` |
| Components (ChatModel, Retriever, Embedding, Lambda, Indexer, Tools, etc.) | `ref_docs/core_modules/components/` |
| Eino ADK (Agent: quickstart, interface, extension, collaboration, HITL, middleware) | `ref_docs/core_modules/eino_adk/` |
| Flow Integration (React Agent, Multi-Agent Hosting) | `ref_docs/core_modules/flow_integration_components/` |
| DevOps (IDE Plugin, Visual Debug, Visual Orchestration) | `ref_docs/core_modules/devops/` |
Usage rules:
- Read the relevant `_index.md` or guide file before implementing any Eino feature.
- Follow the patterns and interfaces described in the docs exactly; do not improvise API usage.
- When unsure which doc to consult, read `ref_docs/core_modules/_index.md` for an overview.
## Architecture
(To be updated as the project grows.)
## Key Dependencies
(To be updated as dependencies are added.)