@opensearch-project/agent-health 0.3.0 → 0.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +43 -2
- package/cli/dist/index.js +1300 -112
- package/deployment/cloudformation/agent-health-observability.yaml +571 -0
- package/dist/assets/index-BOIP5L7h.js +246 -0
- package/dist/assets/index-CU9YKpAL.css +1 -0
- package/dist/index.html +2 -2
- package/lib/dist/config/index.js +50 -2
- package/lib/dist/index.js +66 -6
- package/package.json +25 -8
- package/server/dist/app.js +1276 -101
- package/server/dist/index.js +1429 -130
- package/dist/assets/index-EvPLSTAS.js +0 -267
- package/dist/assets/index-RXasQKUs.css +0 -1
package/README.md
CHANGED
|
@@ -80,12 +80,23 @@ Get Agent Health running in minutes. Choose the option that best suits your need
|
|
|
80
80
|
npx @opensearch-project/agent-health
|
|
81
81
|
```
|
|
82
82
|
|
|
83
|
-
Opens http://localhost:4001 with pre-loaded sample data for exploration.
|
|
83
|
+
Opens http://localhost:4001 with pre-loaded sample data for exploration. If port 4001 is already in use, the server automatically tries the next available port (4002, 4003, etc., up to 10 attempts).
|
|
84
84
|
|
|
85
85
|
### Option 2: Docker Compose (with OpenSearch Observability Stack)
|
|
86
86
|
|
|
87
87
|
For the full observability stack with OpenSearch, OpenTelemetry Collector, and Data Prepper for trace ingestion:
|
|
88
88
|
|
|
89
|
+
**Quick start (one command):**
|
|
90
|
+
|
|
91
|
+
```bash
|
|
92
|
+
curl -fsSL https://raw.githubusercontent.com/opensearch-project/agent-health/main/scripts/install.sh | bash
|
|
93
|
+
```
|
|
94
|
+
|
|
95
|
+
This clones the repo, starts the Docker stack, waits for OpenSearch, auto-configures `agent-health.config.json`, and launches Agent Health.
|
|
96
|
+
|
|
97
|
+
<details>
|
|
98
|
+
<summary><b>Or step-by-step:</b></summary>
|
|
99
|
+
|
|
89
100
|
```bash
|
|
90
101
|
# Clone the repository
|
|
91
102
|
git clone https://github.com/opensearch-project/agent-health.git
|
|
@@ -100,6 +111,7 @@ cp .env.docker .env
|
|
|
100
111
|
# Start Agent Health (connects to local OpenSearch automatically)
|
|
101
112
|
npx @opensearch-project/agent-health
|
|
102
113
|
```
|
|
114
|
+
</details>
|
|
103
115
|
|
|
104
116
|
This brings up:
|
|
105
117
|
- **OpenSearch** — Stores traces, test cases, benchmarks, and evaluation results
|
|
@@ -108,6 +120,30 @@ This brings up:
|
|
|
108
120
|
|
|
109
121
|
> **Prerequisites:** Docker Desktop with 4GB+ memory allocated. See [docker-compose.yml](./docker-compose.yml) for configuration options.
|
|
110
122
|
|
|
123
|
+
### Option 3: AWS CloudFormation (Managed OpenSearch)
|
|
124
|
+
|
|
125
|
+
Deploy a fully managed observability backend using the included CloudFormation template:
|
|
126
|
+
|
|
127
|
+
```bash
|
|
128
|
+
aws cloudformation create-stack \
|
|
129
|
+
--stack-name AgentHealthObservability \
|
|
130
|
+
--template-body file://deployment/cloudformation/agent-health-observability.yaml \
|
|
131
|
+
--capabilities CAPABILITY_NAMED_IAM
|
|
132
|
+
```
|
|
133
|
+
|
|
134
|
+
This deploys:
|
|
135
|
+
- **Amazon OpenSearch Service** domain for trace storage
|
|
136
|
+
- **OpenSearch Ingestion (OSIS)** pipeline for OTLP data collection
|
|
137
|
+
- **IAM roles** for pipeline execution and agent telemetry ingestion
|
|
138
|
+
|
|
139
|
+
After deployment, connect it to Agent Health:
|
|
140
|
+
|
|
141
|
+
```bash
|
|
142
|
+
npx @opensearch-project/agent-health configure --from-stack AgentHealthObservability
|
|
143
|
+
```
|
|
144
|
+
|
|
145
|
+
Or manually copy the `AgentHealthConfigJSON` stack output into your `agent-health.config.json`. See [deployment/cloudformation/](./deployment/cloudformation/) for details and regional Launch Stack URLs.
|
|
146
|
+
|
|
111
147
|
### Next Steps
|
|
112
148
|
|
|
113
149
|
- [Getting Started Guide](./GETTING_STARTED.md) — Step-by-step walkthrough from install to first evaluation
|
|
@@ -150,6 +186,9 @@ A unified dashboard for monitoring AI coding agent usage across **Claude Code**,
|
|
|
150
186
|
|-----------|----------|-------------|
|
|
151
187
|
| `agui-streaming` | AG-UI SSE | ML-Commons agents (default) |
|
|
152
188
|
| `rest` | HTTP POST | Non-streaming REST APIs |
|
|
189
|
+
| `openai-compatible` | OpenAI Chat | LiteLLM, Ollama, vLLM |
|
|
190
|
+
| `strands` | Bedrock Agent Runtime | Amazon Strands agents (server-only) |
|
|
191
|
+
| `langgraph` | LangGraph REST | Non-AG-UI LangGraph instances |
|
|
153
192
|
| `subprocess` | CLI | Command-line tools |
|
|
154
193
|
| `claude-code` | Claude CLI | Claude Code agent comparison |
|
|
155
194
|
| `mock` | In-memory | Demo and testing |
|
|
@@ -200,7 +239,7 @@ export default {
|
|
|
200
239
|
key: "my-agent",
|
|
201
240
|
name: "My Agent",
|
|
202
241
|
endpoint: "http://localhost:8000/agent",
|
|
203
|
-
connectorType: "rest", // or "agui-streaming", "subprocess"
|
|
242
|
+
connectorType: "rest", // or "agui-streaming", "langgraph", "strands", "subprocess"
|
|
204
243
|
models: ["claude-sonnet-4"],
|
|
205
244
|
useTraces: true, // Enable OpenTelemetry trace collection
|
|
206
245
|
}
|
|
@@ -243,6 +282,8 @@ npm run dev # Frontend on port 4000
|
|
|
243
282
|
npm run dev:server # Backend on port 4001
|
|
244
283
|
```
|
|
245
284
|
|
|
285
|
+
> **Port conflicts:** If port 4001 is already in use, the backend server automatically tries 4002, 4003, etc. (up to 10 attempts). The actual port is displayed in the console output.
|
|
286
|
+
|
|
246
287
|
All commits require DCO signoff (`git commit -s`) and all PRs must pass CI checks.
|
|
247
288
|
|
|
248
289
|
For detailed development setup, testing, CI pipeline, debugging, and troubleshooting, see the [Developer Guide](./DEVELOPER_GUIDE.md). For full contribution guidelines, see [CONTRIBUTING.md](./CONTRIBUTING.md).
|