Skip to content

Commit ac3f589

Browse files
committed
Improve
1 parent 5274f96 commit ac3f589

File tree

1 file changed

+21
-4
lines changed

1 file changed

+21
-4
lines changed

applications/polkagent.md

Lines changed: 21 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@
1414

1515
### Overview
1616

17-
- **Tag line (AI focus):** *Turn Substrate metadata into a few **AI‑ready macro tools** and a multi‑turn **Planner**, so agents and humans can query chain data safely in natural language.*
17+
- **Tagline (AI focus):** *Turn Substrate metadata into a few **AI‑ready macro tools** and a multi‑turn **Planner**, so agents and humans can query chain data safely in natural language.*
1818

1919
- **Brief description:**
2020
Polkagent exposes a **small, stable macro‑tool surface** via a Rust CLI + HTTP gateway, plus an **AI Planner** for multi‑turn task solving. Instead of thousands of fine‑grained endpoints, we provide four high‑level tools designed for **LLM/agent integration** and manual CLI use:
@@ -137,6 +137,23 @@
137137
- **Needs met:** Smaller integration surface for LLMs; schema‑enforced safety; **multi‑turn Planner** to resolve ambiguity; reproducibility across upgrades.
138138
- **Similar projects & difference:** Subalfred and SDKs are developer‑centric; Polkagent exposes **macro tools with a single audited execution gate and a built‑in Planner** optimized for NL/AI flows.
139139

140+
I have been an active builder in the Polkadot ecosystem for years and developed [Subalfred](https://github.com/hack-ink/subalfred), a previous W3F-funded project. Subalfred is a developer-oriented **toolbox for Substrate**, offering a collection of practical CLI utilities such as account encoding/decoding, storage key helpers, and other “small but useful” commands. It was built for developers and received positive feedback for simplifying day-to-day technical work.
141+
142+
With **Polkagent**, I want to take that same experience further — this time not just for developers but for **all Polkadot users**. The idea is to bring the convenience of Subalfred’s tooling into an **AI-driven, natural-language experience**, where users can interact with the blockchain simply by asking questions instead of running technical commands.
143+
144+
In the past few years, I’ve observed, both as a long-time Substrate developer and as a moderator on Substrate Stack Exchange, that **the ecosystem has lost momentum**. Many teams have left Polkadot, and new users find it very hard to get started. The technology remains powerful, but the **entry barrier is high** — you need to understand runtimes, metadata, storage layouts, and upgrade cycles before you can do anything meaningful.
145+
146+
**Polkagent directly addresses this pain.** It lowers the barrier by letting people use the same capabilities in plain language. Traditional command-line tools or the Polkadot.js/apps interface require technical knowledge and a lot of clicking around. With Polkagent, users can simply ask:
147+
148+
- “What storage prefixes exist on chain X?”
149+
- “Which pallet might this hash belong to?”
150+
- “What is my current usable balance?”
151+
152+
These are tasks that normally require reading code or running multiple queries.
153+
Later versions will also integrate data from **indexers, Subscan, Polkassembly, Subsquare**, and similar sources, allowing users to perform what previously required several pages and queries with just **one sentence**. **For example: “Where did the last 100 DOT in my account come from?”** (This complex query becomes feasible after indexer integration.)
154+
155+
This is the kind of **AI-powered innovation** the ecosystem needs: turning complex developer-level operations into a conversational, user-friendly experience. It will make Polkadot more approachable for newcomers, more efficient for builders, and ultimately help keep users and projects inside the ecosystem by making interaction simple and accessible again.
156+
140157
---
141158

142159
## Team :busts_in_silhouette:
@@ -149,7 +166,7 @@
149166

150167
- **Contact Name:** Xavier Lau
151168
- **Contact Email:** [[email protected]](mailto:[email protected])
152-
- **Website:** [https://github.com/hack-ink](https://github.com/hack-ink)
169+
- **Website:** [https://github.com/aurexav](https://github.com/aurexav)
153170

154171
### Legal Structure
155172

@@ -214,7 +231,7 @@ Personal. (no legal structure entry)
214231
| 1. | Registry loader | Load IR (`bundle.json`, `tools_skeleton.jsonl`), generate `params_brief/returns_brief/examples/x-typetag`. **DoD:** `polkagent registry inspect` prints counts + sample brief. |
215232
| 2. | `registry.search` | BM25 search over Substrate tools. **DoD:** `curl /registry/search -d '{"query":"balance 15xxx","k":5}'` returns `query.system.account` with brief & example. |
216233
| 3. | `registry.describe` | Return **full JSON‑Schema** (+ `$defs`) + examples. **DoD:** `curl /registry/describe -d '{"tool_name":"query.system.account"}'` shows merged `$defs`. |
217-
| 4. | `graph.hint` (substrate‑only) | Alias/typetag‑based edges (e.g., SS58). **DoD:** `curl /graph/hint` over a whitelist returns edges & aliases. |
234+
| 4. | `graph.hint` | Alias/typetag‑based edges (e.g., SS58). **DoD:** `curl /graph/hint` over a whitelist returns edges & aliases. |
218235

219236
### Milestone 2 — Substrate Execution Pipeline (Read‑Only)
220237

@@ -228,7 +245,7 @@ Personal. (no legal structure entry)
228245
| **0b.** | Documentation | Storage‑key construction (`twox128`, `blake2_128_concat`), SS58 validation, RPC usage, dynamic decoding walkthrough. |
229246
| **0c.** | Testing and Testing Guide | Unit and integration tests cover key derivation, RPC mocking, and failure cases; guide explains running `cargo test` plus CLI smoke tests against a local node. |
230247
| **0d.** | Docker | Dockerfile builds binaries, provisions dependencies, and runs the test suite with sample RPC configuration. |
231-
| 5. | `tool.execute` (substrate backend) | Single gate → `state_getStorage`**dynamic SCALE decode** via `scale-info`/`scale-value`. **DoD:** `curl /validate_and_execute -d '{"tool_name":"query.system.account","args":{"accountId":"<SS58>"}}'` returns decoded fields and `nonce`. |
248+
| 5. | `tool.execute` | Single gate → `state_getStorage`**dynamic SCALE decode** via `scale-info`/`scale-value`. **DoD:** `curl /validate_and_execute -d '{"tool_name":"query.system.account","args":{"accountId":"<SS58>"}}'` returns decoded fields and `nonce`. |
232249
| 6. | Result meta | Attach `{specVersion, metadataHash, rpcUsed}` to success responses. |
233250
| 7. | Error typing | Structured errors: `schema`, `exec` (`RpcError`, `DecodeError`, `NotFound`), `bad_request`; consistent HTTP codes & bodies. |
234251

0 commit comments

Comments
 (0)