@aman_asmuei/aman-agent 0.8.0 → 0.16.2

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
@@ -43,23 +43,26 @@
43
43
 
44
44
  ---
45
45
 
46
- ## What's New in v0.6.0
46
+ ## What's New in v0.16.0
47
47
 
48
- > **Zero to Wow** the first 60 seconds are now magical.
48
+ > **Multi-agent AI companion with teams, delegation, and profiles.**
49
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>
50
+ | Feature | What it does |
51
+ |:---|:---|
52
+ | **Agent profiles** | Multiple AI identities: `--profile coder`, `--profile writer`, `--profile researcher` |
53
+ | **Agent delegation** | Delegate tasks to sub-agents: `/delegate writer Write a blog post` |
54
+ | **Agent teams** | Named teams with pipeline, parallel, and coordinator modes |
55
+ | **Auto-delegation** | AI suggests delegation/teams when appropriate asks permission first |
56
+ | **Image support** | Reference local images or URLs auto base64-encoded and sent as vision content |
57
+ | **Personality engine** | Adaptive tone based on time, sentiment, and energy curve |
58
+ | **Skill engine** | Skills auto-trigger, level up (Lv.1→Lv.5), self-improve from your patterns |
59
+ | **Persistent plans** | Multi-step plans with checkboxes that survive session resets |
60
+ | **Background tasks** | Long-running tools execute concurrently without blocking conversation |
61
+ | **Project-aware sessions** | Auto-detects project, scoped memory, context persistence on exit |
62
+ | **Social media posting** | Post to Bluesky, X, Threads, Facebook, Instagram via aman-social |
63
+ | **Docker deployment** | `aman deploy` — deploy anywhere with Docker, Ollama, or systemd |
64
+
65
+ <a href="https://github.com/amanasmuei/aman-agent/releases">Full release history</a>
63
66
 
64
67
  ---
65
68
 
@@ -128,6 +131,402 @@ aman-agent --budget 12000
128
131
 
129
132
  ---
130
133
 
134
+ ## Usage Guide
135
+
136
+ A step-by-step walkthrough of how to use aman-agent day-to-day.
137
+
138
+ ### Your First Conversation
139
+
140
+ On first run, the agent introduces itself and asks your name. Just talk naturally:
141
+
142
+ ```
143
+ $ aman-agent
144
+
145
+ aman agent — your AI companion
146
+ ✓ Auto-detected Anthropic API key. Using Claude Sonnet 4.6.
147
+ ✓ Ecosystem ready: identity, guardrails (1,204 tokens)
148
+ ✓ Connected 30 MCP tools
149
+ ✓ Personality: morning session, high-drive energy
150
+ Aman is ready.
151
+
152
+ You > Hey, I'm working on a Node.js API
153
+
154
+ Aman ──────────────────────────────────────────────
155
+
156
+ Nice to meet you! I'm Aman, your AI companion. I'll remember
157
+ what matters across our conversations — your preferences,
158
+ decisions, and patterns.
159
+
160
+ What kind of API are you building? I can help with architecture,
161
+ auth, database design, or whatever you need.
162
+
163
+ ────────────────────────────────────── [1 memory stored]
164
+ ```
165
+
166
+ That's it. No setup required. The agent remembers your stack from this point forward.
167
+
168
+ ### How Memory Works
169
+
170
+ Memory is automatic. You don't need to do anything — the agent silently extracts important information from every conversation:
171
+
172
+ - **Preferences** — "I prefer Vitest over Jest" → remembered
173
+ - **Decisions** — "Let's use PostgreSQL" → remembered
174
+ - **Patterns** — "User always writes tests first" → remembered
175
+ - **Facts** — "The auth service is in /services/auth" → remembered
176
+
177
+ Memory shows up naturally in responses:
178
+
179
+ ```
180
+ You > Let's add a new endpoint
181
+
182
+ Aman ──────────────────────────────────────────────
183
+
184
+ Based on your previous decisions, I'll set it up with:
185
+ - PostgreSQL (your preference)
186
+ - JWT auth (decided last session)
187
+ - Vitest for tests
188
+
189
+ ──────────────────────────────── memories: ~47 tokens
190
+ ```
191
+
192
+ **Useful memory commands:**
193
+
194
+ ```
195
+ /memory search auth Search your memories
196
+ /memory timeline See memory growth over time
197
+ /decisions View your decision log
198
+ ```
199
+
200
+ ### Working with Files & Images
201
+
202
+ Reference any file path in your message — it gets attached automatically:
203
+
204
+ ```
205
+ You > Review this code ~/projects/api/src/auth.ts
206
+
207
+ [attached: auth.ts (3.2KB)]
208
+
209
+ Aman ──────────────────────────────────────────────
210
+ Looking at your auth middleware...
211
+ ```
212
+
213
+ **Images** work the same way — the agent can see them:
214
+
215
+ ```
216
+ You > What's wrong with this schema? ~/Desktop/schema.png
217
+
218
+ [attached image: schema.png (142.7KB)]
219
+
220
+ Aman ──────────────────────────────────────────────
221
+ I see a few issues with your schema...
222
+ ```
223
+
224
+ **Supported files:**
225
+ - **Code/text:** `.ts`, `.js`, `.py`, `.go`, `.rs`, `.md`, `.json`, `.yaml`, and 30+ more
226
+ - **Images:** `.png`, `.jpg`, `.jpeg`, `.gif`, `.webp`, `.bmp` (also URLs)
227
+ - **Documents:** `.pdf`, `.docx`, `.xlsx`, `.pptx` (via Docling)
228
+
229
+ Multiple files in one message work too.
230
+
231
+ ### Working with Plans
232
+
233
+ Plans help you track multi-step work that spans sessions.
234
+
235
+ **Create a plan:**
236
+
237
+ ```
238
+ You > /plan create Auth API | Ship JWT auth | Design schema, Build endpoints, Write tests, Deploy
239
+
240
+ Plan created!
241
+
242
+ Plan: Auth API (active)
243
+ Goal: Ship JWT auth
244
+ Progress: [░░░░░░░░░░░░░░░░░░░░] 0/4 (0%)
245
+
246
+ 1. [ ] Design schema
247
+ 2. [ ] Build endpoints
248
+ 3. [ ] Write tests
249
+ 4. [ ] Deploy
250
+
251
+ Next: Step 1 — Design schema
252
+ ```
253
+
254
+ **Mark progress as you work:**
255
+
256
+ ```
257
+ You > /plan done
258
+
259
+ Step 1 done!
260
+
261
+ Plan: Auth API (active)
262
+ Progress: [█████░░░░░░░░░░░░░░░] 1/4 (25%)
263
+
264
+ 1. [✓] Design schema
265
+ 2. [ ] Build endpoints ← Next
266
+ 3. [ ] Write tests
267
+ 4. [ ] Deploy
268
+ ```
269
+
270
+ **The AI knows your plan.** Every turn, the active plan is injected into context. The AI knows which step you're on and reminds you to commit after completing steps.
271
+
272
+ **Resume across sessions.** Close the terminal, come back tomorrow — your plan is still there:
273
+
274
+ ```
275
+ $ aman-agent
276
+
277
+ Welcome back. You're on step 2 of Auth API — Build endpoints.
278
+ ```
279
+
280
+ **All plan commands:**
281
+
282
+ ```
283
+ /plan Show active plan
284
+ /plan done [step#] Mark step complete (next if no number)
285
+ /plan undo <step#> Unmark a step
286
+ /plan list Show all plans
287
+ /plan switch <name> Switch active plan
288
+ /plan show <name> View a specific plan
289
+ ```
290
+
291
+ Plans are stored as markdown in `.acore/plans/` — they're git-trackable.
292
+
293
+ ### Skills in Action
294
+
295
+ Skills activate automatically based on what you're talking about. No commands needed.
296
+
297
+ ```
298
+ You > How should I handle SQL injection in this query?
299
+
300
+ [skill: security Lv.3 activated]
301
+ [skill: database Lv.2 activated]
302
+
303
+ Aman ──────────────────────────────────────────────
304
+ Use parameterized queries — never interpolate user input...
305
+ ```
306
+
307
+ **Skills level up as you use them:**
308
+
309
+ | Level | Label | What changes |
310
+ |:---|:---|:---|
311
+ | Lv.1 | Learning | Detailed explanations, examples |
312
+ | Lv.2 | Familiar | Brief reasoning, show patterns |
313
+ | Lv.3 | Proficient | Task-focused, skip basics |
314
+ | Lv.4 | Advanced | Edge cases, proactive suggestions |
315
+ | Lv.5 | Expert | Just execute, no hand-holding |
316
+
317
+ Skills also self-improve — when the agent learns your patterns (e.g., "user prefers Prisma over raw SQL"), it enriches the skill with your preferences.
318
+
319
+ **12 built-in skill domains:** testing, api-design, security, performance, code-review, documentation, git-workflow, debugging, refactoring, database, typescript, accessibility
320
+
321
+ **10 knowledge library items** auto-suggested when relevant: security-headers, docker-node, github-actions, env-config, error-handling, rate-limiter, prisma-setup, zod-validation, testing-patterns, git-hooks
322
+
323
+ ### Project Workflow
324
+
325
+ aman-agent is project-aware. When you run it in a project directory, it loads project-specific context.
326
+
327
+ **Set up a project:**
328
+
329
+ ```bash
330
+ cd ~/my-project
331
+ npx @aman_asmuei/acore # Creates .acore/context.md with detected stack
332
+ aman-agent # Loads project context automatically
333
+ ```
334
+
335
+ **What gets scoped to your project:**
336
+ - Decisions and topology (stored in amem with `project:my-project` scope)
337
+ - Session state (saved to `.acore/context.md` on exit)
338
+ - Plans (stored in `.acore/plans/`)
339
+
340
+ **Switch projects naturally:**
341
+
342
+ ```bash
343
+ cd ~/project-a && aman-agent # Loads project-a context + memories
344
+ cd ~/project-b && aman-agent # Loads project-b context + memories
345
+ ```
346
+
347
+ Global preferences (coding style, tool choices) carry across all projects.
348
+
349
+ ### Personality & Wellbeing
350
+
351
+ The agent adapts its tone based on time of day and how you're doing:
352
+
353
+ - **Morning:** energetic, direct
354
+ - **Afternoon:** steady, focused
355
+ - **Evening:** warm, winding down
356
+ - **Late night:** gentle, reflective
357
+
358
+ It also reads your messages for frustration, confusion, or fatigue — and adapts:
359
+
360
+ ```
361
+ You > ugh nothing works, tried everything!!
362
+
363
+ [sentiment: frustrated]
364
+
365
+ Aman ──────────────────────────────────────────────
366
+ That sounds frustrating. Let's step back and try a different
367
+ angle — what changed since it last worked?
368
+ ```
369
+
370
+ **Wellbeing nudges** appear when needed:
371
+ - Long late-night session → gentle suggestion to rest
372
+ - 90+ minutes of frustration → suggest a break
373
+ - User seems tired → concise responses, support wrapping up
374
+
375
+ These are one-time nudges — the agent won't nag.
376
+
377
+ ### Customization
378
+
379
+ **Persona presets** for different work styles:
380
+
381
+ ```bash
382
+ aman-agent init
383
+ # Choose: Coding Partner, Creative Collaborator,
384
+ # Personal Assistant, Learning Buddy, or Minimal
385
+ ```
386
+
387
+ **Guardrails** control what the AI should and shouldn't do:
388
+
389
+ ```
390
+ /rules add Coding Always write tests before merging
391
+ /rules add Never Delete production data without confirmation
392
+ ```
393
+
394
+ **Workflows** teach the AI multi-step processes:
395
+
396
+ ```
397
+ /workflows add code-review
398
+ ```
399
+
400
+ **Hook toggles** in `~/.aman-agent/config.json`:
401
+
402
+ ```json
403
+ {
404
+ "hooks": {
405
+ "memoryRecall": true,
406
+ "personalityAdapt": true,
407
+ "extractMemories": true,
408
+ "featureHints": true
409
+ }
410
+ }
411
+ ```
412
+
413
+ Set any to `false` to disable.
414
+
415
+ ### Agent Profiles
416
+
417
+ Run different AI personalities for different tasks:
418
+
419
+ ```bash
420
+ aman-agent --profile coder # direct, code-first
421
+ aman-agent --profile writer # creative, story-driven
422
+ aman-agent --profile researcher # analytical, citation-focused
423
+ ```
424
+
425
+ Each profile has its own identity, rules, and skills — but shares the same memory. Create profiles:
426
+
427
+ ```
428
+ /profile create coder Install built-in template
429
+ /profile create mybot Create custom profile
430
+ /profile list Show all profiles
431
+ ```
432
+
433
+ ### Agent Delegation
434
+
435
+ Delegate tasks to sub-agents with specialist profiles:
436
+
437
+ ```
438
+ /delegate writer Write a blog post about AI companions
439
+
440
+ [delegating to writer...]
441
+
442
+ [writer] ✓ (2 tool turns)
443
+ # Building AI Companions That Actually Remember You
444
+ ...
445
+ ```
446
+
447
+ **Pipeline delegation** — chain agents sequentially:
448
+
449
+ ```
450
+ /delegate pipeline writer,researcher Write and fact-check an article
451
+
452
+ [writer] ✓ — drafted article
453
+ [researcher] ✓ — verified claims, added citations
454
+ ```
455
+
456
+ The AI also **auto-suggests delegation** when it recognizes a task matches a specialist profile — always asks for your permission first.
457
+
458
+ ### Agent Teams
459
+
460
+ Named teams of agents that collaborate on complex tasks:
461
+
462
+ ```
463
+ /team create content-team Install built-in team
464
+ /team run content-team Write a blog post about AI
465
+
466
+ Team: content-team (pipeline)
467
+ Members: writer → researcher
468
+
469
+ [writer: drafting...] ✓
470
+ [researcher: fact-checking...] ✓
471
+
472
+ Final output with verified claims.
473
+ ```
474
+
475
+ **3 execution modes:**
476
+
477
+ | Mode | How it works |
478
+ |:---|:---|
479
+ | `pipeline` | Sequential: agent1 → agent2 → agent3 |
480
+ | `parallel` | All agents work concurrently, coordinator merges |
481
+ | `coordinator` | AI plans how to split the task, assigns to members |
482
+
483
+ **Built-in teams:**
484
+
485
+ | Team | Mode | Members |
486
+ |:---|:---|:---|
487
+ | `content-team` | pipeline | writer → researcher |
488
+ | `dev-team` | pipeline | coder → researcher |
489
+ | `research-team` | pipeline | researcher → writer |
490
+
491
+ Create custom teams:
492
+
493
+ ```
494
+ /team create review-squad pipeline coder:implement,researcher:review
495
+ /team run review-squad Build a rate limiter in TypeScript
496
+ ```
497
+
498
+ The AI auto-suggests teams when appropriate — always asks permission first.
499
+
500
+ ### Daily Workflow Summary
501
+
502
+ Here's what a typical day looks like with aman-agent:
503
+
504
+ ```
505
+ Morning:
506
+ $ cd ~/project && aman-agent
507
+ → Loads project context, active plan, memories
508
+ → "Welcome back. You're on step 3 of Auth API."
509
+ → Work on your plan, skills auto-activate as needed
510
+ → /plan done after each step, commit your work
511
+
512
+ Afternoon:
513
+ → Personality shifts to steady pace
514
+ → Skills level up as you demonstrate mastery
515
+ → Knowledge library suggests snippets when relevant
516
+
517
+ Evening:
518
+ → /quit or Ctrl+C
519
+ → Session auto-saved to memory
520
+ → Project context.md updated
521
+ → Plan progress persisted
522
+ → Optional quick session rating
523
+
524
+ Next morning:
525
+ → Everything picks up where you left off
526
+ ```
527
+
528
+ ---
529
+
131
530
  ## Intelligent Companion Features
132
531
 
133
532
  ### Per-Message Memory Recall with Progressive Disclosure
@@ -231,9 +630,52 @@ Every memory recall shows how many tokens it costs, so you always know the overh
231
630
  [memories: ~47 tokens]
232
631
  ```
233
632
 
234
- ### Time-Aware Greetings
633
+ ### Personality Engine
634
+
635
+ The agent adapts its personality in real-time based on signals:
636
+
637
+ - **Time of day**: morning (high-drive) → afternoon (steady) → night (reflective)
638
+ - **Session duration**: gradually shifts from energetic to mellow
639
+ - **User sentiment**: detects frustration, excitement, confusion, fatigue from keywords
640
+ - **Wellbeing nudges**: suggests breaks when you've been at it too long, gently mentions sleep during late-night sessions
641
+
642
+ All state syncs to acore's Dynamics section — works across aman-agent, achannel, and aman-plugin.
643
+
644
+ ### Auto-Triggered Skills
645
+
646
+ When you talk about security, the security skill activates. Debugging? The debugging skill loads. No commands needed.
647
+
648
+ - 12 skill domains with keyword matching
649
+ - **Skill leveling** (Lv.1→Lv.5): adapts explanation depth to your demonstrated mastery
650
+ - **Self-improving**: memory extraction enriches skills with your specific patterns over time
651
+ - **Knowledge library**: 10 curated reference items auto-suggested when relevant
652
+
653
+ ### Persistent Plans
654
+
655
+ Create multi-step plans that survive session resets:
656
+
657
+ ```
658
+ /plan create Auth | Add JWT auth | Design schema, Implement middleware, Add tests, Deploy
659
+
660
+ Plan: Auth (active)
661
+ Goal: Add JWT auth
662
+ Progress: [████████░░░░░░░░░░░░] 2/5 (40%)
663
+
664
+ 1. [✓] Design schema
665
+ 2. [✓] Implement middleware
666
+ 3. [ ] Add tests ← Next
667
+ 4. [ ] Deploy
668
+ ```
669
+
670
+ Plans stored as markdown in `.acore/plans/` — git-trackable, project-local.
671
+
672
+ ### Background Task Execution
673
+
674
+ Long-running tools (tests, builds, Docker) run in the background while the conversation continues. Results appear when ready.
675
+
676
+ ### Project-Aware Sessions
235
677
 
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.
678
+ The agent detects your project from the current directory. On exit, it auto-updates `.acore/context.md` with session state. Next time you open the same project, the AI picks up where you left off.
237
679
 
238
680
  ### Reminders
239
681
 
@@ -324,10 +766,11 @@ Every operation that can fail logs to `~/.aman-agent/debug.log` with structured
324
766
 
325
767
  | Phase | What happens |
326
768
  |:---|:---|
327
- | **Start** | Load ecosystem, connect MCP, consolidate memory, check reminders, inject time context |
328
- | **Each turn** | Recall relevant memories, stream response, execute tools in parallel, extract new memories |
769
+ | **Start** | Load ecosystem, connect MCP, consolidate memory, check reminders, compute personality state, load active plan |
770
+ | **Each turn** | Recall memories, auto-trigger skills, inject active plan, detect sentiment, stream response, execute tools (parallel + background), extract memories, enrich skills |
771
+ | **Every 5 turns** | Refresh personality state, check wellbeing, sync to acore |
329
772
  | **Auto-trim** | LLM-powered summarization when approaching 80K tokens |
330
- | **Exit** | Save conversation to amem, update session resume, optional session rating |
773
+ | **Exit** | Save conversation to amem, update session resume, persist personality state, update project context.md, optional session rating |
331
774
 
332
775
  ---
333
776
 
@@ -336,6 +779,10 @@ Every operation that can fail logs to `~/.aman-agent/debug.log` with structured
336
779
  | Command | Description |
337
780
  |:---|:---|
338
781
  | `/help` | Show available commands |
782
+ | `/plan` | Show active plan `[create\|done\|undo\|list\|switch\|show]` |
783
+ | `/profile` | Manage agent profiles `[create\|list\|show\|delete]` |
784
+ | `/delegate` | Delegate task to a profile `[<profile> <task>\|pipeline]` |
785
+ | `/team` | Manage agent teams `[create\|run\|list\|show\|delete]` |
339
786
  | `/identity` | View identity `[update <section>]` |
340
787
  | `/rules` | View guardrails `[add\|remove\|toggle ...]` |
341
788
  | `/workflows` | View workflows `[add\|remove ...]` |
@@ -370,7 +817,9 @@ On every session start, aman-agent assembles your full AI context:
370
817
  | **Workflows** | `~/.aflow/flow.md` | Multi-step processes (code review, bug fix) |
371
818
  | **Guardrails** | `~/.arules/rules.md` | Safety boundaries and permissions |
372
819
  | **Skills** | `~/.askill/skills.md` | Deep domain expertise |
373
- | **Time** | System clock | Time of day, day of week for tone adaptation |
820
+ | **Plans** | `.acore/plans/` | Active plan with progress and next step |
821
+ | **Project** | `.acore/context.md` | Project-specific tech stack, session state, patterns |
822
+ | **Time** | System clock | Time of day, day of week for tone and personality adaptation |
374
823
 
375
824
  All layers are optional — the agent works with whatever you've set up.
376
825
 
@@ -463,6 +912,7 @@ All hooks are on by default. Disable any in `config.json`:
463
912
  | `autoSessionSave` | Save conversation to amem on exit |
464
913
  | `extractMemories` | Auto-extract memories from conversation |
465
914
  | `featureHints` | Show progressive feature discovery tips |
915
+ | `personalityAdapt` | Adapt tone based on time, sentiment, and session signals |
466
916
 
467
917
  > Treat the config file like a credential — it contains your API key.
468
918
 
@@ -511,14 +961,19 @@ aman
511
961
  | Identity system | 7 portable layers | None | None |
512
962
  | Memory | amem (SQLite + embeddings + graph) | Postgres + embeddings | None |
513
963
  | Per-message recall | Progressive disclosure (~10x token savings) | Yes | No |
514
- | Learns from conversation | Auto-extract (silent) | Requires configuration | No |
964
+ | Learns from conversation | Auto-extract (silent) + skill enrichment | Requires configuration | No |
965
+ | Personality adaptation | Sentiment-aware, time-based, energy curve | None | None |
966
+ | Wellbeing awareness | 6 nudge types (sleep, breaks, frustration) | None | None |
967
+ | Skill leveling | Lv.1→Lv.5, auto-triggered by context | None | None |
968
+ | Plan tracking | Persistent checkboxes, survives resets | None | None |
969
+ | Vision / multimodal | Images via base64 (local + URL) | None | None |
970
+ | Background tasks | Long-running tools run concurrently | None | None |
515
971
  | Guardrail enforcement | Runtime tool blocking | None | None |
516
972
  | Reminders | Persistent, deadline-aware | None | None |
517
973
  | Context compression | LLM-powered summarization | Archival system | Truncation |
518
- | Tool observation capture | Passive logging of all tool calls | None | None |
519
- | Token cost visibility | Shows memory injection cost per turn | None | None |
520
- | Multi-LLM | Anthropic, OpenAI, Ollama | OpenAI-focused | Single provider |
521
- | Tool execution | Parallel with guardrails | Sequential | None |
974
+ | Multi-LLM | Anthropic, OpenAI, Ollama (all with tools) | OpenAI-focused | Single provider |
975
+ | Tool execution | Parallel + background with guardrails | Sequential | None |
976
+ | Project awareness | Auto-detect project, scoped memory, context.md | None | None |
522
977
 
523
978
  ### amem vs other memory layers
524
979