Add Github Webhook data
Change-Id: I69417685de1264b10f60fc4c74e290890cdb0a67
diff --git a/CLAUDE.md b/CLAUDE.md
index 99dbb5d..522115d 100644
--- a/CLAUDE.md
+++ b/CLAUDE.md
@@ -30,35 +30,26 @@
### Building and Running
```bash
-# Build the application
-cd server && go build -o staff ./cmd/main.go
+# Run the application
+cd server && go run cmd/main.go server
-# Run with specific commands
-./staff [command] [args]
-# Run tests
-go test ./server/...
-# Run specific package tests
-go test ./server/agent/...
-go test ./server/llm/...
-go test ./server/tm/...
-```
+### Testing
+```bash
+# Run all tests
+cd server && go test ./...
+
+# Run with coverage
+cd server && go test -cover ./...
### Common Development Tasks
-
```bash
-# Format code
-go fmt ./...
-
# Check for linting issues
-go vet ./...
+cd server && go vet ./...
# Update dependencies
-go mod tidy
-
-# View available commands
-./staff --help
+cd server && go mod tidy
```
## Agent System Architecture
@@ -89,7 +80,8 @@
- xAI (Grok models)
- Claude (Anthropic)
- Gemini (Google)
-- Local models
+- Local models (via Ollama)
+- Fake provider (for testing)
### Provider Interface
All providers implement the same interface:
@@ -103,10 +95,15 @@
- Timeout and retry settings
- Provider-specific extra parameters
+Configuration can be provided via:
+- `config.yaml` file in server directory
+- Environment variables (OPENAI_API_KEY, GITHUB_TOKEN, etc.)
+- Command-line configuration during setup
+
## File Structure Patterns
### Agent Definitions
-- Agent system prompts stored in `/operations/agents/{role}/system.md`
+- Agent system prompts stored in `/operations/agents/{name}/system.md`
- Each agent has detailed role definition and behavioral guidelines
### Task Files
@@ -115,23 +112,24 @@
- Include task metadata, description, and assignment info
### Solution PRs
-- Agents create branches: `task/{task-id}-{clean-title}`
+- Agents create branches: `solution/{task-id}-{clean-title}` or `subtasks/{task-id}-{clean-title}`
- Solutions formatted as markdown with task metadata
- Automated commit messages and PR descriptions
## Key Dependencies
### Go Modules
-- `github.com/spf13/cobra` - CLI framework
-- `github.com/google/uuid` - UUID generation
-- `github.com/stretchr/testify` - Testing framework
-- `golang.org/x/text` - Text processing
-- `gopkg.in/yaml.v3` - YAML parsing
+- `github.com/spf13/cobra` - CLI framework for command-line interface
+- `github.com/google/uuid` - UUID generation for task and agent IDs
+- `github.com/joho/godotenv` - Environment variable loading from .env files
+- `golang.org/x/text` - Text processing utilities
+- `gopkg.in/yaml.v3` - YAML parsing for configuration files
### Development Dependencies
-- Go 1.24.4+ required
+- Go 1.24.4+ required
- Git for version control and PR operations
-- Access to LLM provider APIs (OpenAI, etc.)
+- Access to LLM provider APIs (OpenAI, xAI, Claude, Gemini, etc.)
+- Environment variables or config.yaml for API keys and credentials
## Testing Strategy
@@ -142,19 +140,6 @@
- Task management operations
- Git operations and branch creation
-### Test Execution
-```bash
-# Run all tests
-go test ./server/...
-
-# Run with coverage
-go test -cover ./server/...
-
-# Run specific test suites
-go test ./server/agent/ -v
-go test ./server/llm/ -v
-go test ./server/tm/ -v
-```
## Security Considerations
@@ -166,9 +151,9 @@
## Integration Points
### External Systems
-- Git repositories for task management and code storage
+- Git repositories for task management and code storage (GitHub/Gerrit)
- LLM provider APIs for agent intelligence
-- Task management systems (GitHub Projects, Asana, Jira)
+- Task management systems via Git-based task tracking
### Internal Communication
- Agents communicate through task management system