diff --git a/Makefile b/Makefile index 40f3ec5f..df4ae382 100644 --- a/Makefile +++ b/Makefile @@ -1,4 +1,4 @@ -.PHONY: help sync openapi-spec openapi-spec-check test test-extras test-all test-models test-sdk lint lint-fix typecheck check build build-models build-server build-sdk publish publish-models publish-server publish-sdk hooks-install hooks-uninstall prepush evaluators-test evaluators-lint evaluators-lint-fix evaluators-typecheck evaluators-build galileo-test galileo-lint galileo-lint-fix galileo-typecheck galileo-build sdk-ts-generate sdk-ts-overlay-test sdk-ts-name-check sdk-ts-generate-check sdk-ts-build sdk-ts-test sdk-ts-lint sdk-ts-typecheck sdk-ts-release-check sdk-ts-publish-dry-run sdk-ts-publish +.PHONY: help sync openapi-spec openapi-spec-check test test-extras test-all test-sdk lint lint-fix typecheck check build build-models build-server build-sdk publish publish-models publish-server publish-sdk hooks-install hooks-uninstall prepush evaluators-test evaluators-lint evaluators-lint-fix evaluators-typecheck evaluators-build galileo-test galileo-lint galileo-lint-fix galileo-typecheck galileo-build sdk-ts-generate sdk-ts-overlay-test sdk-ts-name-check sdk-ts-generate-check sdk-ts-build sdk-ts-test sdk-ts-lint sdk-ts-typecheck sdk-ts-release-check sdk-ts-publish-dry-run sdk-ts-publish # Workspace package names PACK_MODELS := agent-control-models diff --git a/README.md b/README.md index bfd7e8cc..a06388c0 100644 --- a/README.md +++ b/README.md @@ -49,6 +49,9 @@ Explore real-world integrations with popular agent frameworks, or jump to [Quick - **[Galileo Luna-2 Integration](examples/galileo/)** — AI-powered toxicity detection - **[CrewAI SDK Integration](examples/crewai/)** — Working example on integrating with third party Agent SDKs and using Agent Control along side their guardrails - **[DeepEval Integration](examples/deepeval/)** — Working Example on How to create custom evaluators to use with your controls +- **[Agent Control Demo](examples/agent_control_demo/)** — Basic agent control demonstration +- **[Steer Action Demo](examples/steer_action_demo/)** — Example of using the steer action for correction and retry +- **[Strands Agents](examples/strands_agents/)** — Integration with Strands Agents framework ## Quick start @@ -290,12 +293,13 @@ Agent Control is built as a monorepo with these components: ``` agent-control/ -├── sdks/python/ # Python SDK (agent-control) +├── sdks/python/ # Python SDK (agent-control-sdk) ├── sdks/typescript/ # TypeScript SDK (generated) ├── server/ # FastAPI server (agent-control-server) ├── engine/ # Evaluation engine (agent-control-engine) ├── models/ # Shared models (agent-control-models) ├── evaluators/ # Evaluator implementations (agent-control-evaluators) +├── scripts/ # Build and utility scripts ├── ui/ # Next.js web dashboard └── examples/ # Usage examples ``` @@ -334,7 +338,7 @@ For detailed development workflows, see [CONTRIBUTING.md](CONTRIBUTING.md). - **[Python SDK](sdks/python/README.md)** — SDK installation, usage, and API reference - **[Server](server/README.md)** — Server setup, configuration, and deployment - **[UI Dashboard](ui/README.md)** — Web dashboard setup and usage -- **[Evaluators](evaluators/README.md)** — Available evaluators and custom evaluator development +- **[Evaluators](evaluators/builtin/README.md)** — Available evaluators and custom evaluator development ## Contributing diff --git a/docs/OVERVIEW.md b/docs/OVERVIEW.md index 0614ddfa..147228df 100644 --- a/docs/OVERVIEW.md +++ b/docs/OVERVIEW.md @@ -590,7 +590,7 @@ class ContentModerationEvaluator(Evaluator[ContentModerationEvaluatorConfig]): ```bash # Core SDK -pip install agent-control +pip install agent-control-sdk # Server pip install agent-control-server @@ -598,7 +598,7 @@ pip install agent-control-server # With Galileo Luna-2 evaluator support pip install agent-control-evaluator-galileo # Or via convenience extra: -pip install agent-control-server[galileo] +pip install agent-control-evaluators[galileo] ``` ### Quick Start @@ -646,10 +646,10 @@ docker-compose up ## Roadmap -- [ ] Web UI for control management +- [x] Web UI for control management - [ ] More built-in evaluators (OpenAI Moderation, Perspective API, etc.) -- [ ] Metrics and analytics dashboard -- [ ] Multi-language SDK support (TypeScript, Go) +- [x] Metrics and analytics dashboard +- [ ] Multi-language SDK support expansion (Go) - [ ] Webhook notifications for violations --- diff --git a/server/README.md b/server/README.md index f8019de5..82bb06c6 100644 --- a/server/README.md +++ b/server/README.md @@ -183,18 +183,29 @@ GET /api/v1/agents/{agent_name}/controls ```bash # Create control -POST /api/v1/controls -Body: { "control": {...} } +PUT /api/v1/controls +Body: { "name": "my-control" } # List controls -GET /api/v1/controls?skip=0&limit=100 +GET /api/v1/controls?cursor=123&limit=100 # Get control GET /api/v1/controls/{control_id} -# Update control -PUT /api/v1/controls/{control_id} -Body: { "control": {...} } +# Get control data +GET /api/v1/controls/{control_id}/data + +# Update control metadata +PATCH /api/v1/controls/{control_id} +Body: { "name": "new-name", "enabled": true } + +# Update control data +PUT /api/v1/controls/{control_id}/data +Body: { "data": {...} } + +# Validate control data without saving +POST /api/v1/controls/validate +Body: { "data": {...} } # Delete control DELETE /api/v1/controls/{control_id}