ADHD: skill lên ý tưởng hai giai đoạn cho AI agent
ADHD là skill dành cho coding agent, chạy N lệnh gọi LLM độc lập — mỗi lệnh gắn với một cognitive frame khác nhau — rồi qua một bước critic riêng để chấm điểm, loại bỏ ý tưởng yếu, và đào sâu những ý tưởng còn lại. Dùng ADHD khi gặp bài toán mơ hồ, mở — đặt tên, thiết kế API, tìm chiến lược debug. Bỏ qua nếu câu hỏi chỉ có một đáp án đúng, vì bắn 6+ lệnh gọi song song chỉ tốn token vô ích.
Giải Quyết Hiện Tượng Hội Tụ Sớm Ở LLM
Chain-of-Thought tuyến tính chốt luôn ý đầu tiên nó đưa ra, còn các nhánh của Tree-of-Thought vẫn dùng chung một context, nên cùng một kiểu neo suy luận (anchoring) vẫn lặp lại xuyên suốt cây — đây chính là lỗi mà README của ADHD nhắm tới. Mở rộng phạm vi tìm kiếm thôi chưa đủ, nếu nhánh nào cũng nhìn thấy nhánh khác đã nói gì. Khoảng trống nằm ở chỗ thiếu một bức tường cứng giữa bước sinh ý tưởng và bước đánh giá, chứ không phải do thiếu kỹ thuật prompt — và đó là phần ADHD bổ sung.
Tìm Hiểu Cơ Chế Suy Luận Hai Giai Đoạn Của ADHD
ADHD là skill mã nguồn mở xây trên Claude và Codex Agent SDK, xử lý hiện tượng hội tụ sớm (premature convergence) trong suy luận LLM như một vấn đề kiến trúc, không phải vấn đề prompt. ADHD chạy N lệnh Agent song song, cô lập hoàn toàn, mỗi lệnh theo một cognitive frame khác nhau — không chia sẻ context nên không có neo suy luận — rồi một lệnh critic riêng chấm điểm, gắn cờ bẫy (trap), gom cụm, và đào sâu những ý tưởng tốt nhất.
Năng Lực Cốt Lõi Cho Sự Sáng Tạo Của Agent
- ✓Giai đoạn diverge bắn N lệnh gọi Agent song song, mỗi lệnh khóa vào một cognitive frame riêng với system prompt cấm đánh giá — các nhánh không chia sẻ context nên không nhánh nào neo theo câu trả lời của nhánh khác.
- ✓Giai đoạn focus chạy một lệnh critic riêng biệt, chấm điểm từng ý tưởng theo novelty, viability và fit, theo README.
- ✓Critic gắn cờ các trap — ý tưởng nghe hay nhưng thực ra không ổn — kèm một dòng lý do cho mỗi cái, rồi gom cụm ý tưởng theo góc nhìn chung.
- ✓Đào sâu top-K ý tưởng sống sót thành các bản phác thảo có kèm rủi ro và bước làm đầu tiên, chứ không chỉ là một danh sách rút gọn.
- ✓Đi kèm 15 cognitive frame có sẵn (documentation/frames.md), cộng với hướng dẫn tự viết frame riêng.
- ✓TypeScript API trả về các field tách riêng — result.shortlist, result.nonObviousPick, result.traps, result.deepened, result.clusters — thay vì một khối text gộp chung.
- ✓Cờ CLI --frames, --ideas, --top cho phép chỉnh trực tiếp số frame, số ý tưởng mỗi frame, và số lượng lọt vào shortlist.
Khi Nào Nên Dùng ADHD Để Giải Quyết Vấn Đề
- •Quyết định thiết kế, debug mơ hồ, đặt tên, và thiết kế bề mặt API — bốn trường hợp README nêu trực tiếp.
- •Mọi prompt dạng 'cho tôi vài cách để...', nơi câu trả lời một lần thường chỉ lặp lại pattern hiển nhiên.
- •Ví dụ thực tế trong README: bài toán chiến lược retry/timeout/UX cho một CLI — ADHD dùng 6 frame cô lập, tạo ra hơn 30 ý tưởng (30+) và gắn cờ 20 trap, so với 4 pattern kinh điển của baseline.
- •Onboarding codebase: người dùng wtfismyrepo chạy vòng lặp diverge-score-cluster-deepen qua 12 frame riêng cho codebase — đọc code như một new grad, rồi như một archaeologist, một security researcher, kỹ sư trực on-call lúc 3 giờ sáng, một refactorer, và hơn nữa — để tìm các góc onboarding.
- •Review kiến trúc: adopter mythify thêm hướng dẫn trap-clause vào prompt phân tích của mình sau khi đánh giá pattern divergent-frames-rồi-critic của ADHD, để lộ ra 'lựa chọn trông ổn nhưng không ổn, và vì sao' trước khi một kế hoạch được chốt.
Cài Đặt ADHD Vào Agent Của Bạn
Một lệnh duy nhất cài skill và tự nhận diện agent bạn dùng: `npx skills add UditAkhourii/adhd` — README liệt kê Claude Code, Cursor, Antigravity, Codex, Cline, Gemini CLI, Windsurf, và khoảng 50 agent khác được hỗ trợ. Sau khi cài, gọi trực tiếp bằng `/adhd "vấn đề của bạn"`, hoặc để nó tự kích hoạt khi prompt có dạng ideation. Nếu installer tổng quát không đăng ký được trong Codex, ép target bằng `npx skills add UditAkhourii/adhd -a codex -g`, hoặc cài thủ công: `mkdir -p ~/.codex/skills/adhd` rồi curl file SKILL.md từ URL raw của repo vào thư mục đó và khởi động lại Codex. Nếu muốn dùng CLI hoặc thư viện thay vì skill cho agent: `npm install -g adhd-agent` (CLI) hoặc `npm install adhd-agent` (thư viện).
Bắt Đầu Nhanh Với CLI Và TypeScript
CLI nhận thẳng một chuỗi vấn đề: `adhd "design a rate limiter that survives a leader election"`, hoặc kèm cờ: `adhd "name this function" --frames 3 --ideas 8 --top 2` để chỉnh số frame, số ý tưởng mỗi frame, và kích thước shortlist. TypeScript API là `import { run, renderText } from "adhd-agent"`, sau đó `const result = await run({ problem: "How should we shard this queue under bursty load?", framesPerRun: 5, topK: 3 })` rồi `console.log(renderText(result))`. Object result trả về tách riêng result.shortlist, result.nonObviousPick, result.traps, result.deepened, và result.clusters để xử lý bằng code. Tài liệu đầy đủ về cờ và type nằm ở documentation/api.md.
Hiệu Năng Vượt Trội Về Breadth Và Novelty
- ✓Breadth đạt 9.00 so với baseline một lần chạy là 4.83 (+4.17, 1.9×) trên bộ benchmark 6 bài toán của README.
- ✓Trap detection đạt 9.50 so với 1.83 (+7.67, 5.2×) — khoảng cách rộng nhất trong cả bảng kết quả, và cũng là phát hiện đầu bảng mà README nhấn mạnh.
- ✓Novelty đạt 7.83 so với 2.67 (+5.17, 2.9×), actionability cũng dẫn trước ở mức 9.50 so với 6.50 (+3.00, 1.5×), nên các ý tưởng được đào sâu đi kèm rủi ro và bước làm đầu tiên.
- ✓Một benchmark độc lập do Shichinomiya thực hiện tái hiện lại kết quả trên 2 bài toán: novelty tăng từ 4.5 lên 9.0, trap detection tăng từ 5.0 lên 9.0.
- ✓Generator-critic split mang tính cơ học — hai lệnh gọi LLM riêng biệt với system prompt đối lập nhau — chứ không phải yêu cầu gộp trong một prompt duy nhất, và README lý giải đây chính là lý do vấn đề neo suy luận biến mất.
Những Điều Cần Cân Nhắc Khi Dùng ADHD
- △Chính benchmark độc lập xác nhận mức tăng về novelty và trap detection cũng ghi nhận cái giá thực: khoảng 2.3× thời gian và 1.9× lượng output so với chạy một lần.
- △Bảng kết quả chính chỉ dựa trên 6 bài toán kỹ thuật mở, do một LLM judge chấm với thứ tự A/B ngẫu nhiên — là tín hiệu hữu ích, không phải một nghiên cứu quy mô lớn.
- △ADHD bắn N lệnh Agent SDK song song trước khi cho ra một ý tưởng nào, nên không hợp với những việc chỉ có một đáp án đúng hoặc có ngân sách độ trễ chặt.
- △Hỗ trợ Codex cần một đường vòng thủ công (mkdir + curl vào ~/.codex/skills/adhd/) vì installer tổng quát npx skills add không phải lúc nào cũng đăng ký được ở đó.
So Sánh ADHD Với CoT Và ToT
Câu Hỏi Thường Gặp
ADHD được phát hành theo MIT License, theo repository GitHub.
Tree-of-Thought mở rộng tìm kiếm thành nhiều nhánh nhưng vẫn dùng chung một context, nên theo README của ADHD, cùng kiểu neo suy luận vẫn lặp lại xuyên suốt cây. ADHD thay vào đó bắn các lệnh diverge hoàn toàn cô lập, không chia sẻ context, rồi chạy một lệnh critic riêng để chấm điểm, loại bỏ, và đào sâu — một generator-critic split mang tính cơ học chứ không phải mở rộng một prompt duy nhất.
README của ADHD hướng tới quyết định thiết kế, debug mơ hồ, đặt tên, thiết kế bề mặt API, chiến lược, và mọi prompt dạng 'cho tôi vài cách để...' — không phải các bài toán chỉ có một đáp án đúng.
Installer của ADHD tự nhận diện khoảng 50 agent, gồm cả Cursor, Antigravity, Codex, Cline, Gemini CLI, và Windsurf, chứ không chỉ Claude Code, theo README.
Benchmark 6 bài toán trong README cho thấy ADHD vượt baseline một lần chạy ở breadth (9.00 so với 4.83), novelty (7.83 so với 2.67), và trap detection (9.50 so với 1.83), nhưng một người test độc lập đo được thời gian chạy gấp khoảng 2.3× và lượng output gấp khoảng 1.9× so với chạy một lần.
documentation/frames.md trong README giải thích cách chọn frame hoạt động và cách tự viết frame mới, cùng một form cộng đồng được dẫn link để điều phối đóng góp frame từ các adopter.
Nên dùng ADHD khi nào — và khi nào nên bỏ qua
Dùng ADHD nếu bạn đã chạy Claude Code, Codex, hoặc một CLI tương thích Agent SDK khác, và thường xuyên gặp bài toán mơ hồ, mở tới mức đáng bỏ ra chi phí thời gian gấp 1.9 đến 2.3 lần để đổi lấy tập ý tưởng rộng hơn và các trap được gọi tên. Bỏ qua nếu bài toán của bạn chỉ có một đáp án đúng, nếu bạn bị giới hạn về độ trễ hoặc ngân sách, hoặc nếu bạn muốn một kỹ thuật một-prompt nhẹ hơn — Chain-of-Thought hay một prompt Tree-of-Thought thuần chỉ tốn một lệnh gọi, không phải N-lệnh-cộng-critic.
Repo liên quan
Vẫn đang phân vân về adhd?
Một cú bấm sẽ gửi câu hỏi kèm trang này cho AI — xem AI nói gì về adhd.
