@aman_asmuei/aman-agent 0.5.1 → 0.6.1

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 CHANGED
@@ -18,7 +18,7 @@
18
18
   
19
19
  <a href="LICENSE"><img src="https://img.shields.io/badge/license-MIT-blue?style=for-the-badge" alt="MIT License" /></a>
20
20
  &nbsp;
21
- <img src="https://img.shields.io/badge/node-%E2%89%A518-brightgreen?style=for-the-badge&logo=node.js&logoColor=white" alt="Node.js 18+" />
21
+ <img src="https://img.shields.io/badge/node-%E2%89%A520-brightgreen?style=for-the-badge&logo=node.js&logoColor=white" alt="Node.js 20+" />
22
22
  &nbsp;
23
23
  <a href="https://github.com/amanasmuei/aman"><img src="https://img.shields.io/badge/part_of-aman_ecosystem-ff6b35?style=for-the-badge" alt="aman ecosystem" /></a>
24
24
  </p>
@@ -28,6 +28,10 @@
28
28
  extracts knowledge silently, and adapts to your time of day — all running locally.
29
29
  </p>
30
30
 
31
+ <p align="center">
32
+ <img src="https://raw.githubusercontent.com/amanasmuei/aman-agent/main/docs/demo/demo.gif" alt="aman-agent demo" width="720" />
33
+ </p>
34
+
31
35
  <p align="center">
32
36
  <a href="#-quick-start">Quick Start</a> &bull;
33
37
  <a href="#-intelligent-companion-features">Features</a> &bull;
@@ -39,6 +43,26 @@
39
43
 
40
44
  ---
41
45
 
46
+ ## What's New in v0.6.0
47
+
48
+ > **Zero to Wow** — the first 60 seconds are now magical.
49
+
50
+ | Feature | Before | After |
51
+ |:---|:---|:---|
52
+ | **Onboarding** | 3-4 prompts for API key/model | Auto-detects from env vars |
53
+ | **Ecosystem setup** | Manual, separate CLI | `aman-agent init` wizard with persona presets |
54
+ | **First session** | Empty prompt | Agent introduces itself, asks your name |
55
+ | **Returning session** | Raw context dump | "Welcome back. Last time we talked about..." |
56
+ | **Memory storage** | "Remember X? (y/N)" interruptions | Silent auto-store, undo with `/memory clear` |
57
+ | **Output** | Raw text | Markdown rendering with response framing |
58
+ | **Errors** | "401 Unauthorized" | "API key invalid. Run /reconfig to fix." |
59
+ | **Feature discovery** | Read the README | Progressive hints at the right moment |
60
+ | **New commands** | — | `/memory timeline`, upgraded `/doctor` |
61
+
62
+ <a href="https://github.com/amanasmuei/aman-agent/releases/tag/v0.6.0">Full release notes</a>
63
+
64
+ ---
65
+
42
66
  ## The Problem
43
67
 
44
68
  AI coding assistants forget everything between sessions. You re-explain your stack, preferences, and boundaries every time. There's no single place where your AI loads its full context and just *works*.
@@ -69,9 +93,28 @@ npx @aman_asmuei/aman-agent
69
93
  npm install -g @aman_asmuei/aman-agent
70
94
  ```
71
95
 
72
- ### 2. Configure
96
+ **Zero config if you already have an API key in your environment:**
97
+
98
+ ```bash
99
+ # aman-agent auto-detects these (in priority order):
100
+ export ANTHROPIC_API_KEY="sk-ant-..." # → uses Claude Sonnet 4.6
101
+ export OPENAI_API_KEY="sk-..." # → uses GPT-4o
102
+ # Or if Ollama is running locally # → uses llama3.2
103
+ ```
104
+
105
+ No env var? First run prompts for your LLM provider, API key, and model.
73
106
 
74
- First run prompts for your LLM provider, API key, and model. Config saved to `~/.aman-agent/config.json`.
107
+ ### 2. (Optional) Set up your companion
108
+
109
+ ```bash
110
+ # Guided wizard — pick a persona preset
111
+ aman-agent init
112
+
113
+ # Choose from: Coding Partner, Creative Collaborator,
114
+ # Personal Assistant, Learning Buddy, or Minimal
115
+ ```
116
+
117
+ Or just skip this — aman-agent auto-creates a default profile on first run.
75
118
 
76
119
  ### 3. Talk
77
120
 
@@ -87,35 +130,83 @@ aman-agent --budget 12000
87
130
 
88
131
  ## Intelligent Companion Features
89
132
 
90
- ### Per-Message Memory Recall
133
+ ### Per-Message Memory Recall with Progressive Disclosure
91
134
 
92
- Every message you send triggers a semantic search against your memory database. Relevant memories are injected into the AI's context for *that turn only* so the AI always has the right context without bloating the conversation.
135
+ Every message you send triggers a semantic search against your memory database. Results use **progressive disclosure** a compact index (~50-100 tokens) is injected instead of full content (~500-1000 tokens), giving **~10x token savings**. The agent shows the cost:
93
136
 
94
137
  ```
95
138
  You > Let's set up the auth service
96
139
 
140
+ [memories: ~47 tokens]
141
+
97
142
  Agent recalls:
98
- - [decision] Auth service uses JWT tokens (confidence: 0.92)
99
- - [preference] User prefers PostgreSQL (confidence: 0.88)
100
- - [fact] Auth middleware rewrite driven by compliance (confidence: 0.75)
143
+ a1b2c3d4 [decision] Auth service uses JWT tokens... (92%)
144
+ e5f6g7h8 [preference] User prefers PostgreSQL... (88%)
145
+ i9j0k1l2 [fact] Auth middleware rewrite driven by compliance... (75%)
101
146
 
102
147
  Aman > Based on our previous decisions, I'll set up JWT-based auth
103
148
  with PostgreSQL, keeping the compliance requirements in mind...
104
149
  ```
105
150
 
106
- ### Hybrid Memory Extraction
151
+ ### Silent Memory Extraction
107
152
 
108
- After every response, the agent analyzes the conversation and extracts memories worth keeping. Preferences, facts, patterns, and topology are stored silently. Decisions and corrections require your confirmation.
153
+ After every response, the agent analyzes the conversation and extracts memories worth keeping — preferences, facts, patterns, decisions, corrections, and topology are all stored automatically. No confirmation prompts interrupting your flow.
109
154
 
110
155
  ```
111
156
  You > I think we should go with microservices for the payment system
112
157
 
113
158
  Aman > That makes sense given the compliance isolation requirements...
114
159
 
115
- Remember: "Payment system will use microservices architecture"? (y/N) y
116
160
  [1 memory stored]
117
161
  ```
118
162
 
163
+ Don't want something remembered? Use `/memory search` to find it and `/memory clear` to remove it.
164
+
165
+ ### Rich Terminal Output
166
+
167
+ Responses are rendered with full markdown formatting — **bold**, *italic*, `code`, code blocks, tables, lists, and headings all display beautifully in your terminal. Responses are framed with visual dividers:
168
+
169
+ ```
170
+ Aman ──────────────────────────────────────────────
171
+
172
+ Here's how to set up Docker for this project...
173
+
174
+ ──────────────────────────────── memories: ~45 tokens
175
+ ```
176
+
177
+ ### First-Run & Returning Greeting
178
+
179
+ **First session:** Your companion introduces itself and asks your name — the relationship starts naturally.
180
+
181
+ **Returning sessions:** A warm one-liner greets you with context from your last conversation:
182
+
183
+ ```
184
+ Welcome back. Last time we talked about your Duit Raya tracker.
185
+ Reminder: Submit PR for auth refactor (due today)
186
+ ```
187
+
188
+ ### Progressive Feature Discovery
189
+
190
+ aman-agent surfaces tips about features you haven't tried yet, at the right moment:
191
+
192
+ ```
193
+ Tip: Teach me multi-step processes with /workflows add
194
+ ```
195
+
196
+ One hint per session, never repeated. Disable with `hooks.featureHints: false`.
197
+
198
+ ### Human-Readable Errors
199
+
200
+ No more cryptic API errors. Every known error maps to an actionable message:
201
+
202
+ ```
203
+ API key invalid. Run /reconfig to fix.
204
+ Rate limited. I'll retry automatically.
205
+ Network error. Check your internet connection.
206
+ ```
207
+
208
+ Failed messages are preserved — just press Enter to retry naturally.
209
+
119
210
  ### LLM-Powered Context Summarization
120
211
 
121
212
  When the conversation gets long, the agent uses your LLM to generate real summaries — preserving decisions, preferences, and action items. No more losing critical context to 150-character truncation.
@@ -128,6 +219,18 @@ When the AI needs multiple tools, they run in parallel via `Promise.all` instead
128
219
 
129
220
  LLM calls and MCP tool calls automatically retry on transient errors (rate limits, timeouts) with exponential backoff and jitter. Auth errors fail immediately.
130
221
 
222
+ ### Passive Tool Observation Capture
223
+
224
+ Every tool the AI executes is automatically logged to amem's conversation log — tool name, input, and result. This happens passively (fire-and-forget) without slowing down the agent. Your AI builds a complete history of what it *did*, not just what it *said*.
225
+
226
+ ### Token Cost Visibility
227
+
228
+ Every memory recall shows how many tokens it costs, so you always know the overhead:
229
+
230
+ ```
231
+ [memories: ~47 tokens]
232
+ ```
233
+
131
234
  ### Time-Aware Greetings
132
235
 
133
236
  The agent knows the time of day and day of week. It adapts its tone naturally — you'll notice the difference between a morning and a late-night session.
@@ -199,7 +302,7 @@ Every operation that can fail logs to `~/.aman-agent/debug.log` with structured
199
302
  │ │ 4. Execute tools in parallel (with guardrails) │ │
200
303
  │ │ 5. Extract memories from response │ │
201
304
  │ │ - Auto-store: preferences, facts, patterns │ │
202
- │ │ - Confirm: decisions, corrections │ │
305
+ │ │ - All types auto-stored silently │ │
203
306
  │ └────────────────────────────────────────────────┘ │
204
307
  │ │
205
308
  │ Context Management │
@@ -239,7 +342,7 @@ Every operation that can fail logs to `~/.aman-agent/debug.log` with structured
239
342
  | `/tools` | View tools `[add\|remove ...]` |
240
343
  | `/skills` | View skills `[install\|uninstall ...]` |
241
344
  | `/eval` | View evaluation `[milestone ...]` |
242
- | `/memory` | View memories `[search\|clear ...]` |
345
+ | `/memory` | View memories `[search\|clear\|timeline]` |
243
346
  | `/decisions` | View decision log `[<project>]` |
244
347
  | `/export` | Export conversation to markdown |
245
348
  | `/debug` | Show debug log (last 20 entries) |
@@ -287,7 +390,7 @@ Default budget: 8,000 tokens. Override with `--budget`.
287
390
 
288
391
  | Provider | Models | Tool Use | Streaming |
289
392
  |:---|:---|:---|:---|
290
- | **Anthropic** | Claude Sonnet 4.5, Opus 4.6, Haiku 4.5 | Full | Full (with tools) |
393
+ | **Anthropic** | Claude Sonnet 4.6, Opus 4.6, Haiku 4.5 | Full | Full (with tools) |
291
394
  | **OpenAI** | GPT-4o, GPT-4o Mini, o3 | Full | Full (with tools) |
292
395
  | **Ollama** | Llama, Mistral, Gemma, any local model | Text only | Full |
293
396
 
@@ -301,7 +404,7 @@ Config is stored in `~/.aman-agent/config.json`:
301
404
  {
302
405
  "provider": "anthropic",
303
406
  "apiKey": "sk-ant-...",
304
- "model": "claude-sonnet-4-5-20250514",
407
+ "model": "claude-sonnet-4-6",
305
408
  "hooks": {
306
409
  "memoryRecall": true,
307
410
  "sessionResume": true,
@@ -309,7 +412,8 @@ Config is stored in `~/.aman-agent/config.json`:
309
412
  "workflowSuggest": true,
310
413
  "evalPrompt": true,
311
414
  "autoSessionSave": true,
312
- "extractMemories": true
415
+ "extractMemories": true,
416
+ "featureHints": true
313
417
  }
314
418
  }
315
419
  ```
@@ -332,6 +436,7 @@ All hooks are on by default. Disable any in `config.json`:
332
436
  | `evalPrompt` | Session rating on exit |
333
437
  | `autoSessionSave` | Save conversation to amem on exit |
334
438
  | `extractMemories` | Auto-extract memories from conversation |
439
+ | `featureHints` | Show progressive feature discovery tips |
335
440
 
336
441
  > Treat the config file like a credential — it contains your API key.
337
442
 
@@ -380,7 +485,7 @@ aman
380
485
  | Identity system | 7 portable layers | None | None |
381
486
  | Memory | amem (SQLite + embeddings + graph) | Postgres + embeddings | None |
382
487
  | Per-message recall | Progressive disclosure (~10x token savings) | Yes | No |
383
- | Learns from conversation | Auto-extract (hybrid confirm) | Requires configuration | No |
488
+ | Learns from conversation | Auto-extract (silent) | Requires configuration | No |
384
489
  | Guardrail enforcement | Runtime tool blocking | None | None |
385
490
  | Reminders | Persistent, deadline-aware | None | None |
386
491
  | Context compression | LLM-powered summarization | Archival system | Truncation |
@@ -415,7 +520,7 @@ aman
415
520
  git clone https://github.com/amanasmuei/aman-agent.git
416
521
  cd aman-agent && npm install
417
522
  npm run build # zero errors
418
- npm test # 84 tests pass
523
+ npm test # 111 tests pass
419
524
  ```
420
525
 
421
526
  PRs welcome. See [Issues](https://github.com/amanasmuei/aman-agent/issues).