66 lines
1.7 KiB
Markdown
66 lines
1.7 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.
|
|
|
|
## Architecture
|
|
|
|
(To be updated as the project grows.)
|
|
|
|
## Key Dependencies
|
|
|
|
(To be updated as dependencies are added.)
|