Biên tập viên: Đây là bài tổng kết quy trình làm việc cá nhân về Agentic Engineering (Kỹ thuật Tác tử Thông minh). Tác giả Matt Van Horn không ghi lại mẹo sử dụng một công cụ lập trình AI cụ thể nào, mà là một phương pháp toàn diện để tái cấu trúc quy trình sản xuất xoay quanh AI Agent.
Trong thực tế của anh, AI không còn chỉ là trợ lý gợi ý mã trong IDE, mà giống hơn một 'đội ngũ thực thi' có thể được điều phối: đầu tiên dùng /ce-plan để sắp xếp ý tưởng mơ hồ thành plan.md, sau đó dùng /ce-work để thực thi; dùng giọng nói thay cho gõ phím; đồng thời mở nhiều phiên cmux, Claude, Codex song song để thúc đẩy; để Claude phụ trách lập kế hoạch và đánh giá, để Codex phụ trách xây dựng; biến bản ghi âm cuộc họp, ghi chú, giải pháp lịch sử và kho mã nguồn thành ngữ cảnh của Agent; rồi kết tủa các hành động tần suất cao thành những skills có thể tái sử dụng.
Thay đổi đằng sau phương pháp này là giá trị cốt lõi của nhà phát triển đang chuyển từ 'tự tay hoàn thành từng dòng mã' sang 'đặt câu hỏi, đặt ra ràng buộc, phán đoán hướng đi, liên tục sửa chữa lệch lạc'. Khi Agent có thể đảm nhận khối lượng lớn công việc thực thi, con người giống như nguồn tín hiệu trong hệ thống hơn: cung cấp gu thẩm mỹ, kinh nghiệm, thứ tự ưu tiên và phán đoán cuối cùng.
Vì vậy, điều thực sự đáng chú ý trong bài viết này không phải là một plugin hay lệnh cụ thể nào, mà là sự thay đổi quan hệ sản xuất mà công cụ AI trưởng thành mang lại. Sau khi chi phí thực thi giảm xuống, một cá nhân có thể đồng thời thúc đẩy nhiều dự án hơn, và cũng dễ rơi vào vòng lặp xây dựng và phát hành không ngừng. Tác giả nhắc nhở người đọc ở cuối bài: Có thể tạo ra thứ gì đó, không có nghĩa là có người cần nó. Đối với những người đang dùng AI để viết mã, làm sản phẩm, viết nội dung hoặc quản lý công việc tri thức, bài viết này đặt ra một vấn đề thực tế hơn: Khi 'làm bằng tay' ngày càng rẻ, chúng ta nên định nghĩa lại giá trị của mình như thế nào?
Dưới đây là nguyên văn:
Ba tháng trước, tôi đã đăng một bài viết 'Tất cả mẹo về Claude Code mà tôi biết'. Bài viết đó có 913.000 lượt xem. Lúc đó @kevinrose hỏi nên dùng IDE nào, câu trả lời của tôi là: 'Không dùng IDE. Chỉ cần tệp plan.md và giọng nói.'
Trước đây điều này được gọi là vibe coding. Khoảng từ Lễ Tạ ơn năm ngoái, khả năng của mô hình cuối cùng đã đủ tốt để biến 'đồ chơi' này thành thứ thực sự có thể sử dụng, cũng chính là thứ mà nhiều người bây giờ gọi là Agentic Engineering (Kỹ thuật Tác tử Thông minh). Đây cũng là lý do duy nhất tôi có thể giao hàng liên tục trong năm nay. Năm nay, tôi đã phát hành last30days (2,7 nghìn Star), Printing Press (4000+ Star) và Agent Cookie vừa ra mắt; đồng thời, tôi cũng trở thành người đóng góp quan trọng cho một số dự án mã nguồn mở lớn, bao gồm Python, Go, GStack và Paperclip. Kể từ thời trung học, tôi đã không tạo ra phần mềm nào thực sự có người quan tâm nữa. Dưới đây là tất cả mẹo của tôi.
Mẹo
Phiên bản mẹo đọc nhanh YOLO: Sao chép toàn bộ bài viết cho agent của bạn, để nó lập kế hoạch, cấu hình tất cả mọi thứ được đề cập ở đây, sau đó thực thi từng mẹo một. Đó là toàn bộ ngăn xếp công việc của tôi, thậm chí bạn không cần tự đọc.
1. Ngay khi có ý tưởng, hãy tạo một CE plan.md trước
Đây vẫn là nguyên tắc đầu tiên. Cũng là điều quan trọng nhất tôi học được.
Chỉ cần tôi có một ý tưởng, việc đầu tiên tôi làm là dùng /ce-plan tạo ra một plan.md. Không phải 'để tôi nghĩ trước', cũng không phải 'tôi sẽ bắt đầu viết mã ngay'. Mỗi lần, đều là /ce-plan. Nó cũng hỗ trợ hình ảnh, vì vậy bất cứ thứ gì bạn có thể chụp lại đều có thể trở thành điểm bắt đầu:
· Ý tưởng sản phẩm điên rồ:/ce-plan.
· Lỗi trên GitHub: sao chép URL issue, dán vào, /ce-plan.
· Lỗi terminal: Cmd+Shift+4 chụp màn hình, Ctrl+V dán, /ce-plan fix this.
· Ảnh chụp màn hình, thông báo lỗi, bản thiết kế, chuỗi thảo luận Slack: đều có thể ném trực tiếp vào.
Nếu ý tưởng còn mơ hồ, tôi thậm chí không biết mình thực sự muốn gì, tôi sẽ dùng /ce-brainstorm trước để cùng agent nghĩ rõ vấn đề, sau khi đường nét rõ ràng rồi mới dùng /ce-plan.
Ở tầng dưới, /ce-plan sẽ song song cử nhiều agent nghiên cứu. Một cái đọc kho mã nguồn của bạn, tìm kiếm mẫu, kiểm tra quy ước mã của bạn; một cái tìm kiếm giải pháp trong quá khứ của bạn, trích xuất kinh nghiệm từ đó. Nếu chủ đề này đáng đi sâu, nó sẽ cử thêm agent nghiên cứu tài liệu bên ngoài và thực tiễn tốt nhất. Tất cả những điều này xảy ra đồng thời. Sau đó, nó sẽ tích hợp kết quả, viết ra một plan.md có cấu trúc: vấn đề nằm ở đâu, hướng giải quyết là gì, cần sửa những tệp nào, tiêu chí nghiệm thu với hộp kiểm, nên tiếp tục sử dụng những mẫu nào trong mã của chính bạn. Nó không phải là đề xuất chung chung, mà là giải pháp được tạo ra dựa trên repo, quy ước và kinh nghiệm lịch sử của chính bạn.
/ce-work sẽ cầm kế hoạch này để xây dựng. Ngữ cảnh bùng nổ? Mở một phiên mới, hướng nó đến plan này, là có thể tiếp tục từ chỗ dừng lại lần trước. Kế hoạch này chính là điểm kiểm tra có thể vượt qua mọi sự mất mát ngữ cảnh.
Phát triển truyền thống là 80% viết mã, 20% lập kế hoạch. Ở đây ngược lại: suy nghĩ đều đặt vào kế hoạch, thực thi trở thành hành động cơ học.
Compound Engineering là plugin do @kieranklaassen và @trevin tạo ra, nó khiến quy trình này thực sự hoạt động.
Đầu tiên tôi trở thành fan cuồng của nó, sau đó trở thành người đóng góp, và bây giờ đã là người đóng góp lớn thứ ba ngoài đội ngũ cốt lõi. Quy tắc của tôi rất đơn giản: trừ khi thực sự chỉ sửa một dòng mã, nếu không nhất định phải có một plan.md trước.
Mẹo
Cài đặt Compound Engineering:
/plugin marketplace add EveryInc/compound-engineering-plugin
Dán ảnh chụp màn hình, URL lỗi hoặc thông báo lỗi, sau đó /ce-plan, rồi /ce-work.
Ý tưởng chưa rõ? Dùng /ce-brainstorm trước.
2. Đừng đọc plan.md
Tôi luôn tạo ra plan.md. Nhưng tôi gần như không bao giờ đọc nó. Kế hoạch là để cho agent xem, con người ngu ngốc như bạn đừng xem.
Bắt buộc tạo ra một kế hoạch sẽ khiến agent không thể lười biếng. Nó phải nghiên cứu, phải cam kết một phương pháp, phải viết ra tiêu chí nghiệm thu, sau đó thực sự hoàn thành những tiêu chí này. Một coding agent có kế hoạch sẽ giao hàng công việc hoàn chỉnh; một coding agent không có kế hoạch sẽ đi đường tắt, và sớm dừng lại. Kế hoạch chính là dây buộc nó.
Vì vậy tôi sẽ để nó viết kế hoạch, lướt qua tiêu đề, sau đó chạy trực tiếp /ce-work. Nếu tôi có câu hỏi, tôi sẽ hỏi trực tiếp trong cùng phiên đó: 'Khoan đã, tại sao lại dùng phương pháp này?' hoặc để nó đưa cho tôi một bản TLDR. Hoặc khi tôi hoàn toàn không hiểu, tôi sẽ nói: 'eli5 this plan' (giải thích kế hoạch này như cho một đứa trẻ 5 tuổi). Tôi nhận được một phiên bản ngắn gọn, gật đầu, và tiếp tục. Tôi sẽ không ngồi đó đọc 300 dòng markdown. Đó là bài tập của agent, không phải của tôi.
Tạo kế hoạch. Tin tưởng kế hoạch. Đừng đọc kế hoạch.
Mẹo
Đừng để bản thân đọc kế hoạch. Hỏi trực tiếp trong phiên: TLDR?, eli5 this plan, hoặc 'Khoan đã, tại sao lại dùng phương pháp này?'
3. Sử dụng /ce-plan cho công việc phi kỹ thuật sâu nhất: lập kế hoạch cho 'kế hoạch' trước
Nhiều người nghĩ /ce-plan và /ce-work là dùng để viết mã. Nhưng kinh nghiệm lớn nhất tôi học được từ tháng Ba là: chúng không chỉ sinh ra cho mã. Công việc tri thức sâu nhất tôi làm bây giờ, cũng chạy trên cùng một vòng lặp. Mẹo then chốt là: kế hoạch đầu tiên không phải trực tiếp giải quyết vấn đề, mà là lập kế hoạch 'làm thế nào để lập kế hoạch' trước. Đây cũng không phải tôi cứng nhắc chuyển một công cụ mã sang mục đích khác, /ce-plan vốn đã có chế độ lập kế hoạch chung, được thiết kế chính xác cho loại công việc phi mã này.
Điều này cũng không chỉ áp dụng cho vấn đề kinh doanh. Tài liệu chiến lược, đặc tả sản phẩm, phân tích đối thủ cạnh tranh, cập nhật hội đồng quản trị, đều có thể dùng cùng một vòng lặp.
Lấy một ví dụ thực tế. Lúc đó tôi đang ấp ủ một thách thức kinh doanh, nên đã gặp Michael Margolis một lần. Ông từng là đối tác nghiên cứu của GV, nổi tiếng với phương pháp bullseye-customer method (phương pháp khách hàng tâm điểm). Ông đề nghị tôi đọc sách của ông, cuốn sách đó có thể tải PDF miễn phí trên trang web của ông. Cách làm cũ có lẽ là lướt nhanh qua, rồi thôi. Nhưng lần này, tôi mở Claude Code, nói đại khái như thế này:
Trong 45 phút tiếp theo, nó đã tạo ra một kế hoạch rất hoành tráng.
Đây cũng là mẹo tốt nhất tôi biết để LLM không lười biếng. Nếu bạn yêu cầu trực tiếp nó giao thành phẩm, nó thường đi đường tắt; nhưng nếu bạn để nó lập kế hoạch 'làm thế nào để tạo ra sản phẩm giao hàng này' trước, sau đó thực thi kế hoạch này, mỗi lần nó sẽ tạo ra một phiên bản sâu hơn.
Mẹo
Công việc phi mã sâu: dùng /ce-plan make a plan for the plan, đưa tất cả ngữ cảnh và bản ghi chép cuộc họp cho nó, sau đó /ce-work.
4. Chấp nhận đầu vào bằng giọng nói
Sử dụng đầu vào bằng giọng nói cho LLM khác với sử dụng cho bất cứ thứ gì khác. Bản ghi chép không cần hoàn hảo, vì thứ nghe bạn nói hiểu ngữ cảnh. Nó sẽ đoán ra micrô đã nghe sai cái gì. Bạn có thể nói lắp bắp, ngừng lại, nói một nửa rồi bắt đầu lại. Giọng nói cuối cùng có thể dùng được là vì đầu kia đủ thông minh để lấp đầy khoảng trống.
Cấu hình của tôi là:
· Mac: dùng Monologue (do Every làm) hoặc Wispr Flow. Chọn một trong hai, đưa đầu vào giọng nói vào ứng dụng đang được tập trung, sau đó nói chuyện trực tiếp với Claude Code. Tôi còn mua một micrô cổ ngỗng cho văn phòng.
· Điện thoại: không dùng Monologue và Wispr Flow, chuyển đổi qua lại trên iOS quá phiền. Tính năng đọc chính tả mặc định của Apple đã đủ dùng, vì bạn đang nói chuyện với LLM, không phải với người. Ngay cả khi nó chuyển sai một nửa từ, agent cũng có thể hiểu. Ghi chú cho người lười cũng hoàn toàn không thành vấn đề.
· Nói thật lòng: khi một mình tôi rất giỏi dùng giọng nói. Nhưng trong văn phòng, tôi khó dùng. Có người nói bạn có thể nói nhỏ vào micrô, nhưng tôi thấy bản thân thực sự không làm vậy, vì tôi không muốn tỏ ra bất lịch sự, cũng không muốn làm phiền những người xung quanh. Vì vậy, cảnh bàn làm việc trong văn phòng chung vẫn là điểm yếu trong quy trình làm việc của tôi. Nếu bạn đã giải quyết vấn đề đầu vào bằng giọng nói trong văn phòng mở, và không trở thành 'kiểu người đó', hãy cho tôi biết cách làm. Tôi thực sự muốn nghe đề xuất.
Mẹo
· Mac: cài đặt Monologue hoặc Wispr Flow.
· Điện thoại: dùng tính năng đọc chính tả mặc định của Apple.
· Mua thêm một micrô cổ ngỗng.
5. Mở rất nhiều tab trong cmux
Đây là một ngày thực tế của tôi. Bốn đến sáu tab cmux, đôi khi nhiều hơn, mỗi tab là một phiên độc lập:
· Một cái đang viết kế hoạch.
· Một cái đang xây dựng dựa trên một kế hoạch khác.
· Một cái đang chạy last30days.
· Một cái đang sửa lỗi mà tôi phát hiện khi kiểm tra một thứ trước đó.
Khi /ce-plan trong một cửa sổ bắt đầu nghiên cứu, tôi chuyển sang cửa sổ khác, chạy /ce-work cho một kế hoạch đã viết. Khi nó đang xây dựng, cửa sổ thứ ba lại có thể dán vào một lỗi mới. Khi tôi chuyển lại về cửa sổ đầu tiên, nó đã hoàn thành và chờ ở đó.
Tôi nghe nói Orca làm việc tốt về mặt di động. Trước đây tôi cũng là người theo chủ nghĩa thuần túy Ghostty, nhưng tôi đã bỏ lỡ quá nhiều thông báo trong Ghostty.
Mẹo
Sử dụng cmux.
Giữ 4 đến 6 tab mở, mỗi tab xử lý một nhiệm vụ khác nhau.
6. Để terminal mặc định mở Claude hoặc Codex, không phải Shell
Một tab mới nên mở Claude Code trực tiếp, không phải shell. Mở tab, bạn đã ở trong cuộc trò chuyện với agent. Không cần cd, không cần nhập claude. Khi chỉ cần một lần nhấn phím để mở phiên mới, bạn sẽ khởi động chúng thường xuyên hơn. Tôi cũng không dùng thư mục. Agent của bạn sẽ tự tìm dự án.
Mẹo
Dán đoạn văn này cho agent của bạn:
7. Điều khiển từ xa mọi cửa sổ, và cấp cho Claude Code hoặc Codex một địa chỉ email
Hai mẹo này có thể khiến mọi phiên có thể truy cập từ bất cứ đâu.
Mỗi lần mở cửa sổ mới, đều bật điều khiển từ xa.
Đặt điều khiển từ xa tự động bật cho mỗi phiên.
Bây giờ, mọi cửa sổ đều có thể truy cập từ ứng dụng điện thoại Claude. Bạn khởi động một phiên tại bàn làm việc, sau đó rời đi, tiếp tục điều khiển cùng nhiệm vụ đang chạy thời gian thực trên điện thoại. Khi xếp hàng, bạn cũng có thể điều khiển thứ đang chạy trên Mac ở nhà.
Cấp cho Claude một địa chỉ email.
Thông qua AgentMail, Claude Code có thể có một địa chỉ email. Đây là điều người sáng lập Adi @adisingh dạy tôi. Bạn gửi email đến hộp thư đó, một phiên mới sẽ mở ra và bắt đầu xử lý nội dung trong chủ đề và nội dung email, tất cả tệp đính kèm cũng có sẵn dưới dạng đường dẫn. Phát hiện lỗi trong bữa tối? Gửi email từ điện thoại, khi bạn trở lại trước màn hình, phiên đã chạy rồi. Tôi đã mở nguồn toàn bộ: github.com/mvanhorn/agentmail-to-claude-code.
Nó bao gồm ba phần:
Một daemon, lắng nghe hộp thư AgentMail qua WebSocket. Mỗi khi nhận được email trong danh sách trắng, nó mở một phiên Claude mới, ghi email vào tệp prompt và bảo Claude đọc và thực thi.
Hai backend terminal: cmux hoặc Ghostty độc lập, để nó có thể điều khiển cách khởi động bạn vốn dùng.
Một đầu gửi. Tôi kết nối nó vào lệnh cc trong Hermes, vì vậy tôi có thể chạy cc
Danh sách trắng là cổng kiểm soát. Chỉ địa chỉ bạn kiểm soát mới có thể đi qua; bất kỳ email nào không qua được xác minh DKIM hoặc SPF sẽ bị loại bỏ trước khi phiên mở.
Mẹo
Luôn bật điều khiển từ xa: thêm vào ~/.claude/settings.json:
'remoteControlAtStartup': true
Cấp cho Claude một email. Dán đoạn văn này cho agent của bạn:
8. Bỏ qua xác nhận quyền một cách nguy hiểm. Vâng, tôi nghiêm túc đấy
Claude Code mỗi lần chỉnh sửa và thực thi lệnh đều yêu cầu quyền. Khi bạn chạy song song sáu phiên, bạn không thể liên tục theo dõi nó. Có hai cài đặt khiến việc này trở nên khả dụng. Có người nói chế độ tự động là cách làm 'an toàn hơn', nhưng với tôi nó quá chậm.
Điểm then chốt là:
skipDangerousModePermissionPrompt: true
Không có nó, Claude mỗi phiên đều yêu cầu bạn xác nhận. Bạn cũng có thể dùng Shift+Tab để chuyển đổi. Có người nói với tôi, chế độ 'tự động' mới có thể đạt được phần lớn hiệu quả với điều kiện an toàn hơn. Có lẽ vậy. Thái độ của tôi là YOLO. Đây là máy tính của tôi. Nếu tôi làm hỏng mọi thứ, GitHub vẫn ở đó. Khi tôi giúp bạn bè cấu hình Claude Code, AI còn chủ động cố gắng khuyên họ không bật cài đặt này. Bạn phải trực tiếp một chút.
Cài đặt khác là hook âm thanh. Sáu phiên song song, điều này không thể thương lượng.
Bạn có thể rời đi, nghe thấy âm thanh rồi quay lại. Sáu phiên chạy đồng thời, âm thanh là cách bạn biết nhiệm vụ nào vừa hoàn thành.
Mẹo
Codex cũng có chế độ YOLO tương tự. Trong ~/.codex/config.toml:
approval_policy = 'never'
sandbox_mode = 'danger-full-access'
Hoặc sử dụng khi khởi động một lần:
codex --yolo
9. Cách tôi hầu như không mở Codex CLI, nhưng hầu hết mã đều chạy qua Codex
Suốt cả ngày tôi đều giao việc cho Codex, nhưng gần như không bao giờ mở Codex CLI. Claude lập kế hoạch, Codex xây dựng, còn tôi luôn ở trong phiên Claude.
Tôi có ba cách giao việc cho Codex mà không rời Claude:
· Tiện ích mở rộng Codex IDE: gửi nhiệm vụ, áp dụng kết quả, không cần vào terminal Codex.
· /ce-work --codex: ủy thác xây dựng cho Codex trực tiếp trong vòng lặp Compound Engineering.
· Chế độ Codex của Printing Press: thêm codex vào cuối prompt tạo CLI mới, nó sẽ giao việc xây dựng cho Codex.
Cài đặt của tôi là cả hai engine đều mở đến mức suy luận extra-high:
Codex: reasoning xhigh, chế độ fast luôn bật.
Claude Code: reasoning xhigh, chế độ fast tắt. Chế độ fast của nó sẽ tính phí theo token ngoài gói Max 200 đô la của bạn, vì vậy tôi không dùng.
Hai đăng ký 200 đô la chạy song song, tương đương có thêm cả một engine thứ hai. Tôi đẩy các tác vụ xây dựng song song lớn cho Codex, để Claude phụ trách lập kế hoạch và gu thẩm mỹ. Một số bạn bè làm ngược lại: Codex xây dựng, Claude xem xét.
Mẹo
Codex: reasoning xhigh, chế độ fast bật.
Claude Code: reasoning xhigh, chế độ fast tắt.
Giao việc cho Codex: sử dụng tiện ích mở rộng Codex IDE, /ce-work --codex, hoặc thêm codex vào cuối prompt của Printing Press.
10. Nghiên cứu trước khi lập kế hoạch: last30days
Trước khi tôi chạy /ce-plan, tôi thường chạy /last30days một lần về chủ đề này trước.
Có lần, tôi đang lựa chọn giữa agent-browser của Vercel và Playwright. Tôi không đọc tài liệu, mà chạy:
/last30days Vercel agent browser vs Playwright
Vài phút sau, tôi nhận được hàng chục cuộc thảo luận Reddit, bài đăng X, video YouTube, câu chuyện HN. agent-browser mỗi lần gọi tiêu thụ ngữ cảnh ít hơn nhiều, còn Playwright chỉ định nghĩa công cụ đã đổ ra hàng nghìn token. Tôi cho toàn bộ đầu ra vào /ce-plan integrate agent-browser. Kế hoạch được tạo ra như vậy, dựa trên những thứ cộng đồng thực sự biết ngay lúc này, chứ không phải dữ liệu huấn luyện từ sáu tháng trước.
last30days là dự án mã nguồn mở, hiện đã có hơn 2,6 nghìn Star. Nó sẽ tìm kiếm song song Reddit, X, YouTube, TikTok, Instagram, HN, Polymarket, GitHub và toàn bộ mạng. Tôi sẽ chạy nó trước khi chọn thư viện, trước khi làm tính năng, trước khi gặp đối tác kinh doanh, trước khi viết bài. Tôi cũng chạy nó trên vài chủ đề trong bài viết này. Nghiên cứu, lập kế hoạch, xây dựng. Đây mới là vòng lặp thực sự.
Mẹo
Cài đặt last30days.
Trước /ce-plan, chạy trước:
/last30days
Nhớ cài đặt key ScrapeCreators.
11. Giao mọi thứ cho Granola, và đưa bản ghi chép thô vào LLM
Tôi ăn trưa với một ứng viên. Chúng tôi nói về sản phẩm, thức ăn, con cái, 90 phút trò chuyện thông thường với một ý tưởng sản phẩm đan xen. Granola luôn ghi âm. Kết thúc, tôi dán toàn bộ bản ghi chép thô vào Claude Code:
/ce-plan turn this into a product proposal
Điểm then chốt là 'thô'. Tôi không tóm tắt trước. Tôi sẽ đưa toàn bộ bản ghi chép lộn xộn trực tiếp vào, kể cả nội dung lạc đề về sushi, sau đó để Claude trích xuất thông tin hữu ích dựa trên kho mã thực tế của tôi và tất cả kế hoạch chiến lược tôi từng viết. Ngữ cảnh Granola + kho mã + kế hoạch lịch sử, bằng vàng. Nó viết ra một đề xuất một lần, tự động bỏ qua trò chuyện nhà hàng, tôi đã gửi đi ngay tối hôm đó. Người đó bây giờ đã làm việc toàn thời gian cùng chúng tôi.
Cải tiến từ tháng Ba là: Printing Press Granola CLI. Thứ này rất thần kỳ. Tôi có thể kéo bất kỳ cuộc họp nào dưới dạng dữ liệu có cấu trúc sạch sẽ trực tiếp vào phiên, có thể tìm kiếm mọi cuộc họp tôi đã mở, tìm ra câu nói nào đó của một người ba tuần trước, sau đó nhập nó vào kế hoạch. Không cần sao chép dán nữa. Ngữ cảnh của mọi cuộc họp, chỉ cách một lệnh.
Mẹo
Ném bản ghi chép thô của Granola trực tiếp vào /ce-plan, đừng tóm tắt trước.
Cài đặt Printing Press Granola CLI.
12. Tín hiệu con người
Đây là sự chuyển đổi tâm thái tôi mất nhiều thời gian nhất để hoàn thành. Khi bạn đồng thời chạy sáu agent, công việc của bạn không phải là tự tay làm việc. Công việc của bạn là trở thành tín hiệu.
Agent cung cấp sản lượng. Bạn cung cấp gu thẩm mỹ, hướng đi, và vòng lặp 'phản hồi - chuyển hướng'. Bạn xem nó trả về cái gì, sau đó nói: 'Phương án thứ hai gần hơn, nhưng dùng cách diễn đạt trong phương án đầu tiên', 'Xử lý rủi ro lớn nhất', 'Đoạn này quá dài', chúng sẽ di chuyển. Thứ khan hiếm và có giá trị trong vòng lặp này, là phán đoán của bạn, không phải tốc độ gõ phím của bạn. Tôi càng chấp nhận bản thân chỉ là 'tín hiệu con người', không cố gắng đồng thời là người làm việc bằng tay, tôi giao hàng càng nhiều.
Bạn chịu trách nhiệm về gu thẩm mỹ. Để chúng chịu trách nhiệm về việc tay chân.
Mẹo
Dùng não của bạn chỉ huy agent, tăng thêm giá trị cho thế giới. Bộ não của bạn vẫn có giá trị.
13. Dùng HyperFrames làm video, dùng nó làm mọi video
Video trước đây là thứ tôi thuê ngoài hoặc bỏ qua trực tiếp. Cách tôi làm video bây giờ giống như làm những việc khác: tôi nói, agent xây dựng, tôi phản hồi.
HyperFrames cho phép tôi tạo video dưới dạng HTML, vì vậy agent có thể viết nó. Vòng lặp giống hệt viết mã, chỉ là kết quả đầu ra từ PR trở thành MP4. Mỗi video là một thư mục, bên trong có một script.md, viết kịch bản từng cảnh, bao gồm phông chữ động, phụ đề, và mỗi điểm nhịp độ. Agent sẽ biến kịch bản thành tổng hợp hình ảnh và render ra. Không cần biên tập viên, không cần dòng thời gian.
Các video phát hành tôi đã làm theo cách này bao gồm:
Granola CLI demo
Agent Cookie launch
Video phát hành của Agent Cookie được làm bằng HyperFrame.
Chi phí video giảm xuống còn một cuộc trò chuyện, vì vậy bất cứ thứ gì đáng có video, bây giờ đều sẽ có video: video ngắn phát hành, demo sản phẩm, video giải thích hoạt hình, đoạn cắt có phụ đề. Chúng cũng không chỉ đăng lên X. Tôi thậm chí sẽ đưa demo render trực tiếp vào PR, như PR này trong dự án atlas-lean của Facebook AI Research.
Mẹo
Dùng HyperFrames làm video: viết một script.md, để agent render nó thành MP4.
Tải GIF lên catbox, chúng sẽ hiển thị đẹp trên GitHub, PR, README và issue.
14. Ghi chú của bạn là kho kiến thức của agent
Mẹo strategy-folder tháng Ba sau đó đã được tôi tổng quát hóa. Một kế hoạch mỗi lần đều trở nên tốt hơn, vì Claude có thể truy cập mọi kế hoạch tôi từng viết trước đây. Đây là ngữ cảnh lãi kép. Vì vậy, tôi để nó hướng đến toàn bộ bộ não của tôi.
Công cụ tôi để nó truy cập bao gồm:
Bear, kết hợp với Bear CLI. Mười năm ghi chú, biên bản cuộc họp, ý tưởng nửa vời và quyết định, agent đều có thể đọc viết. Đây là RAG cá nhân, chỉ là không cần gọi tên như vậy. Tôi đưa vào càng nhiều, mỗi phiên càng thông minh.
Obsidian. Bản thân tôi không dùng, nhưng nhiều người rất thích dùng nó cho việc này, và hệ sinh thái plugin của nó rất sâu.
gbrain. Bộ não tôi đồng bộ giữa các máy và agent khác nhau.
supermemory. Một lớp ký ức cho agent được nhiều người đề xuất. Tôi hiện đang nghiên cứu sâu, kết luận sau này nói.
Hình thái của mẹo này mới là trọng điểm: chọn một công cụ ghi chú có CLI hoặc API, hướng agent đến nó, để kiến thức của chính bạn bắt đầu sinh lãi kép.
Mẹo
Để agent của bạn đồng thời kết nối hai loại công cụ: một loại là công cụ bạn tự viết ghi chú, như Bear, Obsidian; một loại là 'bộ não' thay agent ghi nhớ, như gbrain, supermemory. Chọn những công cụ có CLI hoặc API, để agent mới có thể đọc chúng.
15. Làm việc mọi lúc mọi nơi: Mac mini của tôi
Mẹo
Mosh, áp dụng cho trường hợp phải SSH vào. Nó có thể trong điều kiện Wi-Fi kém và môi trường mạng di động, giữ phiên mượt mà, có phản hồi như cục bộ. Trên SSH thông thường, Claude Code sẽ chậm như bò, mỗi lần nhấn phím đều phải chờ đợi khứ hồi mạng. Sự khác biệt mà Mosh mang lại, chính là 'khả dụng' và 'đau khổ'.
Tmux, áp dụng cho trên máy bay. SSH đến máy từ xa trong phiên tmux, công việc sẽ chạy trên máy từ xa, không phải trên máy tính xách tay của bạn. Wi-Fi ngắt 20 phút khi bay qua Đại Tây Dương, bạn kết nối lại, attach trở về, mọi thứ dừng ở vị trí bạn rời đi. Tôi từng giao tính năng liên tục trong suốt chuyến bay từ châu Âu trở về.
Hermes và OpenClaw chạy đồng thời, áp dụng cho công việc từ xa tự chủ. Hermes là một hệ sinh thái sẽ tự học trong nhiệm vụ lặp lại, dần trở nên tốt hơn; OpenClaw thì thắng ở phạm vi rộng kỹ năng xây dựng agent. Tôi sẽ chuyển đổi giữa hai cái. Nếu bạn từ bỏ OpenClaw từ sớm, đề xuất xóa sạch nó, bắt đầu lại.
Agent Cookie dùng để đồng bộ cookies và tệp .env giữa Mac mini và Mac chính của bạn.
16. Proof: gửi kế hoạch cho đồng nghiệp
plan.md với tôi hoàn hảo, nhưng nếu gửi nó cho một người không sống trong terminal, thì hoàn toàn vô dụng. Đây là lỗ hổng thực sự cuối cùng, và Proof cũng đến từ Every, đúng lúc lấp đầy nó.
Mở một kế hoạch trong Proof, đọc nó như một tài liệu, điều đó đã tốt. Nhưng nó thực sự trở nên không thể thiếu, là khi gửi kế hoạch cho đồng nghiệp. Tôi ném plan.md hoặc spec vào Proof, gửi liên kết, một người không dùng terminal cũng có thể đọc rõ ràng, bình luận nội dòng, và những bình luận này sẽ chảy ngược lại vòng lặp của agent. Không cần dán markdown vào Slack nữa, rồi nhìn nó render thành một đống rác. Đây là lớp xem xét tham gia của con người cho toàn bộ quy trình làm việc tệp kế hoạch, và cũng là lần đầu tiên tôi cảm thấy, chia sẻ công việc agentic cho một đồng nghiệp bình thường không còn ngượng.
Khi tôi viết bài này, tôi cũng đặt nó vào Proof. Nó đã được xem xét như vậy.
Và, toàn bộ bài viết của tôi đều được viết trong cmux, đồng thời bên cạnh mở Proof review.
Mẹo
Chia sẻ một kế hoạch: ném tệp .md vào Proof, gửi liên kết, kéo bình luận trở lại vòng lặp công việc.
17. Viết skill của riêng bạn
Cải tiến lớn nhất, không phải là sử dụng agent, mà là dạy chúng những kỹ thuật có thể tồn tại. Bất cứ việc gì tôi làm hơn hai lần, tôi sẽ biến nó thành một skill: một lệnh có thể tái sử dụng mà agent sau này có thể chạy vĩnh viễn. Đầu tiên viết skill của riêng bạn, dùng nó để tự động hóa quy trình làm việc của bạn.
Bạn không cần viết từ đầu. Kỹ thuật thực sự mở khóa điều này, là để agent của bạn xem một skill đã hiệu quả, sau đó sao chép hình dạng của nó. Đúng nghĩa đen là: 'Hãy xem skill Compound Engineering này, giúp tôi làm một cái tương tự cho [việc tôi muốn tự động hóa].' Nó sẽ đọc một ví dụ tốt, học cấu trúc, sau đó dựng giàn giáo cho tôi. Tôi đã tạo ra một đống skill như vậy.
Điều này cũng gần như trở thành phần lớn cuộc sống mã nguồn mở của tôi hiện nay. Nếu bạn xem GitHub của tôi, sẽ thấy công việc của tôi là các skill khác nhau, và công cụ xung quanh chúng. last30days ban đầu chỉ là một skill tôi làm cho chính mình, hiện đã mở nguồn và có hơn 2,6 nghìn Star. Printing Press là một nhà máy hoàn chỉnh tạo CLI native cho agent, cũng là công cụ tôi dùng cá nhân nhiều nhất, tôi đã hợp nhất hơn 320 PR cho nó. Tôi cũng là một trong những người đóng góp chính cho bản thân Compound Engineering. Tất cả những điều này không phải một kế hoạch hoành tráng. Mỗi thứ chỉ là một quy trình làm việc tôi thường chạy, thường xuyên đến mức đáng để agent giỏi vĩnh viễn nó.
Viết skill một lần. Sau đó mỗi phiên sẽ nhanh hơn. Đây là phần lãi kép trong Compound Engineering.
Mẹo
Bất cứ việc gì bạn làm hơn hai lần, hãy biến nó thành một skill: xem skill Compound Engineering này, giúp tôi làm một cái tương tự cho [X].
18. Mã nguồn mở: đóng góp cho dự án bạn yêu thích
Cùng một vòng lặp khiến tôi giao dự án của mình, cũng có thể giúp người khác giao dự án. Tôi đã có hàng trăm PR được hợp nhất bởi dự án mã nguồn mở, bao gồm Python, Go, OpenCV, Agent Browser của Vercel và OpenClaw. Không phải loại PR sửa lỗi chính tả tình cờ, mà là tính năng thực tế trong công cụ tôi dùng hàng ngày.
Không biết từ lúc nào, tôi đã xuất hiện ở vị trí đầu trong một số bảng xếp hạng người đóng góp:
Vị trí thứ 3 cho Compound Engineering, Superpowers và Emdash.
Vị trí thứ 4 cho GStack và Paperclip.
Vị trí thứ 6 cho Vercel Agent Browser.
Vị trí thứ 2 cho Camoufox.
@pejmanjohn nói đùa rằng, bây giờ ông mở một repo, tìm khuôn mặt của tôi trong lưới avatar người đóng góp, đã trở thành phiên bản cá nhân 'Where's Wally' của ông.
Nhưng PR được hợp nhất không phải giải thưởng thực sự. Giải thưởng thực sự là con người. Tôi sẽ vào Discord, làm quen người bảo trì, kết bạn thực sự. Điều này cũng rất hữu ích cho tuyển dụng. Tôi vừa tuyển một kỹ sư cho công ty mới của mình, chính là quen theo cách này. Bạn đóng góp cho một dự án mình yêu thích, sẽ gặp những người cũng yêu thích nó, sau đó việc này tiếp tục sinh lãi kép.
Mẹo
Chọn một công cụ bạn dùng hàng ngày, tìm ra một điều thực sự thiếu sót của nó, sau đó dùng cùng vòng lặp /ce-plan + /ce-work làm ra nó.
Xuất hiện trong Discord của dự án này. PR đưa bạn vào cửa, con người mới là lý do bạn ở lại.
Tăng thêm giá trị trên X.
Trên X, chi 1 đến 3 đô la mỗi tháng đăng ký người bạn tôn trọng. Tôi chi 1 đô la mỗi tháng đăng ký @garrytan. Như vậy khi tôi gửi PR, tôi có thể gửi bài đăng X cho ông, và ông sẽ nhận thông báo đặc biệt, biết tôi là người đăng ký trả phí. Tôi cũng trả phí đăng ký @jason, @teknium, @Teknium.
19. Cấu hình máy tính xách tay hiện tại của tôi
Chiếc máy tính xách tay dùng hai năm của tôi, dưới tải công việc hiện tại gần như không dùng được nữa: cả ngày đồng thời chạy sáu phiên Claude, cộng thêm Codex. Vì vậy tôi nâng cấp lên M5 Max, 64GB RAM. Nó là một con quái vật, tôi rất thích. Nhưng tải công việc này vẫn đánh bại nó: máy mới toanh của tôi chỉ chịu được pin ngắn nhất một giờ.
Vì vậy tôi bắt đầu mua điện hoảng loạn. Tôi bây giờ mang theo một cục sạc Anker bên mình, trong xe cũng để một bộ sạc Anker, để Tesla có thể sạc bổ sung cho tôi trên đường.
Mẹo
Không bao giờ ngủ đông: sudo pmset -a disablesleep 1
Mang theo một cục sạc Anker bên mình; để một bộ sạc trong xe.
20. Printing Press: chạy CLI đời sống thực tế
Hầu hết các mẹo này sống trong terminal. Mẹo này thì đi ra khỏi terminal. Printing Press là một nhóm CLI, chúng đóng gói dịch vụ thế giới thực, để agent có thể trực tiếp giúp bạn chạy việc vặt. Nó hiện đã là một dự án độc lập, tài khoản là @ppressdev, hơn 3700 Star, tôi đang cùng @trevin làm nó.
Điều thực sự khiến các công cụ này chạy được là auth, và điều này đã được phát hành tối qua: Agent Cookie. Nó giao phiên trình duyệt thực của bạn cho CLI, để CLI hoạt động với tư cách của bạn, không cần dán mật khẩu, cũng không cần xác thực lại. Nó biến 'một agent biết một dịch vụ' thành 'một agent đã đăng nhập dịch vụ này'.
Một buổi chiều thực tế, từ đầu đến cuối: Làm nóng Tesla. Các con lên xe sau mười phút: 'Làm nóng xe lên 72 độ.' Tesla CLI khởi động, xe đã ấm trước khi chúng tôi ra khỏi cửa.
Instacart. 'Thêm Corona vào giỏ hàng Costco trên Instacart.'
ESPN Polling. Một phiên giúp tôi theo dõi trận đấu, chỉ nhắc tôi khi tỷ số sát nút. Tôi không cần làm mới bất cứ thứ gì, chỉ nhận được lời nhắc thực sự quan trọng đó.
Hành trình Alaska Airlines cho con. Nó lấy giá vé và giá các ngày trước sau, kiểm tra số dư điểm Atmos của chúng tôi, cho kết quả vào /ce-plan, sau đó đưa ra chiến lược đặt chỗ, bao gồm ngày rẻ nhất và lời nhắc mua. Toàn bộ quá trình diễn ra bên cạnh sân bóng đá.
Đây không còn chỉ là 'AI giúp tôi viết mã'. Agentic Engineering sẽ giúp bạn chạy việc vặt, theo dõi trận đấu, làm nóng xe, đặt du lịch, còn bạn có thể làm việc khác.
Mẹo
Từ thư viện của printingpress.dev cài đặt CLI có sẵn, giao thẳng một việc vặt cho agent của bạn.
Auth không đau: Agent Cookie sẽ giao phiên trình duyệt thực của bạn cho CLI, để nó hoạt động với tư cách của bạn.
Mẹo thực sự là: tự print một cái. Giao một việc bạn làm cả ngày, một API hoặc một dịch vụ không thể thiếu cho Printing Press, để nó tạo ra một CLI native cho agent. Công cụ bạn xây dựng cho quy trình làm việc của mình, mới là công cụ thực sự thay đổi cách bạn làm việc.
21. Thành thật một chút: Sự nghiện ngập kiểu loạn trí AI
Agent vốn nên thay chúng tôi hoàn thành mọi công việc. Kết quả, mọi người bạn tôi quen, đều trải qua trạng thái làm việc cật lực nhất trong đời.
Phản hồi đơn giản nhất là: nghỉ ngơi một chút, đi sờ cỏ. Nhưng vấn đề không ở đây. Vấn đề là nghiện ngập. Dùng agent xây dựng thứ gì đó, là trò chơi điện tử vĩ đại nhất thế giới, và vòng lặp của nó quá mạnh.
Tôi thực sự lo lắng cho một số bạn bè. Họ bị kích hoạt hoàn toàn vì đột nhiên có thể xây dựng bất cứ thứ gì, vì vậy không làm gì ngoài xây dựng. Sau đó họ phát hành sản phẩm, nhưng không có người dùng. Điều này cũng không sao. Tôi cũng từng phát hành nhiều thứ không có người dùng. Cạm bẫy không nằm ở chỗ không ai dùng sau khi phát hành, mà ở chỗ bạn biến mất trong xây dựng, mất đi người xung quanh.
Vì vậy hãy cẩn thận. Nói chuyện với người bạn yêu thương. Hỏi bản thân, liệu thực sự có người muốn thứ bạn đang làm không. Nếu câu trả lời thành thật là: đây chỉ là công cụ bạn tự dùng cho mình, thì cũng không sao. Một số thứ tốt nhất tôi từng làm, vốn chỉ là cho chính tôi.
Nếu bạn thực sự muốn khán giả, hãy đi theo con đường nội dung Gary Vaynerchuk luôn nói. Bạn bắt đầu từ một nơi nào đó, đăng lên khoảng trống, hy vọng có một người chú ý. Sau đó là ba người, mười người, một trăm người, cuối cùng từng bước đi đến vài nghìn người. Không ai có vài nghìn người ngay từ đầu. Bất cứ thứ gì bạn xây dựng cũng vậy.
Mẹo
Nghỉ ngơi một chút. Đi sờ cỏ.
Nói chuyện với người bạn yêu thương.
Làm một thứ gì đó có người muốn, dù 'có người' chỉ là chính bạn.
Bài viết này đã được viết ra như thế này
Đây là một tệp markdown. Claude Code chạy trong cmux, tôi nói với Monologue: 'Tối ưu hóa phần mở đầu no-IDE đó', 'Làm phần don't-read-the-plan cay hơn một chút', 'Thêm câu chuyện Tesla và Instacart'. Nó viết lại, tôi phản hồi, sau đó bài viết vào Proof xem xét. last30days cung cấp tài liệu mới. Nhân tiện, lần này không dùng Zed. Tôi không dùng nó nữa. Không dùng IDE. Không gõ mã. Nói chuyện, lập kế hoạch, xây dựng. Từ bàn làm việc, ghế sofa, ô tô, bên cạnh sân bóng đá, đều có thể.
Đây là tất cả những gì tôi biết tính đến tháng Sáu: một ứng dụng giọng nói, một plugin tệp kế hoạch, vài sửa đổi cấu hình, một đống tab, một Mac Mini, hai máy từ xa, và một đội tàu CLI có thể chạy đời sống thực tế.
Mẹo
Sao chép toàn bộ bài viết này, dán cho agent của bạn, để nó giúp bạn cấu hình mọi thứ được đề cập trong đó hết mức có thể. Quy trình làm việc agentic engineering của bạn sẽ có chuyện tốt xảy ra.






