https://github.com/agentic-layer/agent-gateway-krakend
Contains all the assets needed to build and configure the KrakenD gateway container image
https://github.com/agentic-layer/agent-gateway-krakend
Last synced: 2 months ago
JSON representation
Contains all the assets needed to build and configure the KrakenD gateway container image
- Host: GitHub
- URL: https://github.com/agentic-layer/agent-gateway-krakend
- Owner: agentic-layer
- License: apache-2.0
- Created: 2025-09-09T12:38:45.000Z (7 months ago)
- Default Branch: main
- Last Pushed: 2026-01-16T02:26:38.000Z (2 months ago)
- Last Synced: 2026-01-16T15:59:59.666Z (2 months ago)
- Language: Go
- Size: 141 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Agent Gateway KrakenD
A [KrakenD](https://www.krakend.io/docs/) based Agent Gateway implementation that serves as an egress API gateway for routing incoming requests to exposed agents within the agentic platform.
## Plugins
Following plugins are included in this repository:
- [Agent Card URL Rewriting Plugin](go/plugin/agentcard-rw/README.md)
- [OpenAI A2A Plugin](go/plugin/openai-a2a/README.md)
## Development
### Prerequisites
The following tools are required for development:
- **Docker**: For containerization and local development
### Building Plugins
```shell
make plugins
```
This will compile the plugins and output it to `build/`.
### Run with Docker Compose
Start the agent gateway using Docker Compose:
```shell
# Then start the services
docker compose up --build
```
Stop the services:
```shell
docker compose down
```
## Testing
### A2A via JSON-RPC
Verify the gateway proxy functionality with a JSON-RPC message:
```shell
curl http://localhost:10000/mock-agent \
-H "Content-Type: application/json" \
-d '{
"jsonrpc": "2.0",
"id": 1,
"method": "message/send",
"params": {
"message": {
"role": "user",
"parts": [
{
"kind": "text",
"text": "Hello, mock agent!"
}
],
"messageId": "9229e770-767c-417b-a0b0-f0741243c589",
"contextId": "abcd1234-5678-90ab-cdef-1234567890ab"
},
"metadata": {"conversationId": "9229e770-767c-417b-a0b0-f0741243c589"}
}
}' | jq
```
## Contribution
See [Contribution Guide](https://github.com/agentic-layer/agent-gateway-krakend?tab=contributing-ov-file) for details on contribution, and the process for submitting pull requests.