4 điểm bởi kurthong 8 ngày trước | Chưa có bình luận nào. | Chia sẻ qua WhatsApp

Đây là công cụ ủy quyền được tạo ra cho những ai dùng vibe coding với Claude Code hoặc Codex CLI và thấy hạn mức gói trả phí bị hao rất nhanh.

https://github.com/hang-in/tunaLlama

Khi lập trình với Claude Code, các bước có đầu ra dài như tạo mã, rà soát tệp và refactor là những phần tốn token nhất. Nhưng các bước này thường mang tính quyết định và chênh lệch chất lượng giữa các mô hình không lớn. Ngược lại, việc phân rã (yêu cầu → danh sách công việc) và kiểm chứng (kết quả trả về có đáp ứng yêu cầu hay không) có đầu vào/đầu ra ngắn, nhưng khác biệt về chất lượng mô hình lại lớn.

tunaLlama là backend + plug-in cố định chính sự bất đối xứng đó thành một luồng làm việc cho mã nguồn.

Vai tròMô hìnhTrách nhiệmArchitectClaude / Codex (gói cố định)Phân rã / đặc tả / kiểm chứng / tích hợpDeveloperLLM cục bộ (Ollama / Cloud / LM Studio)Sinh mã / tự rà soát / tự sửaReviewerCùng session với ArchitectPhán quyết cuối cùng

Chỉ các bước nặng về token mới được đẩy sang cục bộ, còn các bước phân rã và kiểm chứng ngắn vẫn giữ lại cho Claude / Codex.

Claude Code và Codex CLI đều có thể dùng công cụ ngoài thông qua plug-in.
Cài một lần là xong; khi agent đang làm việc và thấy cần, nó sẽ tự gọi.
Người dùng không cần mỗi lần đều phải nói "hãy dùng công cụ này". tunaLlama là một dạng plug-in như vậy, phơi bày 13 công cụ qua máy chủ MCP (Model Context Protocol).
Một repo có thể chạy cho cả Claude Code và Codex CLI.
(claude-plugin/marketplace.json được cả hai client nhận diện.)

Khi người dùng yêu cầu công việc (tiếng Hàn / tiếng Anh)

  1. Architect phân rã công việc - nếu ngắn thì tuna_dev_review, nếu dài thì viết tài liệu spec rồi dùng tuna_dev_review_from_spec
  2. Backend lặp vòng generate → review → fix (bounded delegation - điều kiện kết thúc là review pass hoặc max iter)
    Mọi lần gọi đều được ghi vào SQLite và lập chỉ mục bằng bộ phân tích hình thái tiếng Hàn (Kiwi)
  3. Architect kiểm chứng kết quả rồi trả lại cho người dùng

Khi chạy riêng một local LLM cỡ trung so với trường hợp Architect dọn ngữ cảnh rồi mới chuyển tiếp, kết quả tăng +0.58 ~ +0.64 (kiểm chứng trên 3 mô hình, Phase 7-2). Điều đó có nghĩa là dù cùng một local LLM, nếu ngữ cảnh được sắp xếp tốt trước khi chuyển giao thì kết quả cải thiện đáng kể.
Tuy nhiên, phép đo này dựa trên synthetic seed. Nó được đo trên một tập kiểm thử dựng sẵn theo các kịch bản công việc thường gặp trong thực tế, nên việc có tái hiện y hệt trong workflow người dùng thật hay không vẫn là vấn đề khác. Bộ organic dogfooding metric từ v0.5.7+ đã tự động nạp 4 loại chỉ số (standalone_toy_rate / convention_adherence_rate / ast_excess_score / syntactically_valid) vào ~/.tunallama/metrics.db, và khả năng tái lập với baseline tích lũy từ người dùng bên ngoài vẫn đang tiếp tục được thu thập.

Về tiết kiệm hạn mức, vì công thức tính hạn mức của Anthropic / OpenAI không được công khai nên không có kết quả định lượng kiểu "tiết kiệm X%". Ý chính là "vẫn tốt hơn dùng bình thường".

Hỗ trợ tiếng Hàn

Có thể lập chỉ mục tìm kiếm tiếng Hàn nhờ tích hợp bộ phân tích hình thái Kiwi. Với đầu vào không có khoảng trắng như "imeil geomjeung", vẫn có thể khớp khi tìm bằng "imeil". Cấu trúc này bù cho hạn chế của tokenizer unicode61 trong FTS5 vốn chỉ tách tiếng Hàn theo âm tiết / jamo. Tuy nhiên, các từ mới / thuật ngữ chuyên ngành mà Kiwi không xử lý được có thể ảnh hưởng đến chất lượng tìm kiếm.

Cài đặt trong 5 phút

Chỉ cần gửi một dòng trong session là xong:

"Hãy cài theo INSTALL.md của https://github.com/hang-in/tunaLlama";

Agent sẽ tự cài dependency, cấu hình .env, đăng ký plug-in và kiểm chứng theo từng bước.
Nếu muốn cài thủ công, hãy xem README.

Ma trận hoạt động trên cả hai môi trường

Claude Code và Codex CLI chạy trên cùng một repo, nhưng một số tính năng mới chỉ được kiểm chứng ở một bên (đo thực tế trên v0.5.6, Claude Code 2.1.138 + Codex CLI 0.128.0):

Hạng mụcClaude CodeCodex CLIGọi 13 công cụ MCP✓✓
Chia sẻ DB (~/.tunallama/memory.db)✓✓
Chia sẻ state.md✓✓
Gọi tường minh tuna_load_memory / tuna_recall✓✓
Agents auto-discovery✓
SessionStart hook + state.md auto-prepend✓
(v0.5.5+)✗MCP resource auto-attach✗✗
Trong Claude Code, state.md auto-prepend hoạt động tự động;
trong Codex CLI, nên để người dùng gọi tường minh tuna_load_memory ở turn đầu hoặc tự fetch docs trực tiếp.
Việc gọi 13 công cụ MCP đều hoạt động bình thường ở cả hai bên, nên bản thân cơ chế delegation là khả thi ở cấp công cụ.

Giới hạn

Việc tiết kiệm hạn mức là dữ liệu cảm nhận thực tế (đã nhắc ở trên)
Chi phí system prompt của công cụ MCP là một trade-off có chủ đích - phần mô tả + schema của 13 công cụ thêm khoảng 1.6k tokens vào system prompt của mỗi conversation. Đây không phải context bloat ngoài ý muốn mà là chi phí affordance được thiết kế để Architect chọn đúng công cụ delegation

Bắt buộc phải có môi trường local LLM (Ollama v.v., Ollama cloud cũng hoạt động bình thường) - nếu không thì không chạy được
Các chỉ số tìm kiếm dựa trên synthetic seed (đã nhắc ở trên)
Một số tính năng của Codex CLI chưa hoạt động (ma trận ở trên)
Chất lượng tìm kiếm có thể bị ảnh hưởng bởi từ mới / thuật ngữ chuyên ngành tiếng Hàn

Vì sao không dùng prompt seed / AGENTS.md

Công cụ này không cố giải quyết giới hạn ngữ cảnh bằng cách bắt agent đọc thêm nhiều tài liệu.
Thay vào đó, nó cắt nhỏ đơn vị công việc rồi chuyển cho local / low-cost LLM qua công cụ MCP, còn mô hình Architect cấp trên tập trung vào spec ngắn, kết quả review và đánh giá diff cuối cùng.
Các quy tắc vận hành dựa trên tài liệu theo thời gian có thể dẫn đến stale state, drift và lost-in-the-middle.
tunaLlama tránh điều đó bằng cách ghi lại các delegation call vào SQLite và đặt một lớp thực thi để tìm kiếm / recall khi cần.

Ai sẽ thấy hữu ích

Người dùng gói cố định Claude Code Pro/Max (có nhu cầu quản lý hạn mức)
Người dùng Codex CLI (quản lý gói cố định / API quota của OpenAI)
Những ai đã có sẵn môi trường Ollama local / Ollama Cloud / LM Studio
Những ai xử lý công việc bằng tiếng Hàn (tích hợp Kiwi)

Kiểm thử / giấy phép

Bản phát hành usable dogfooding v0.5.x. 507 unit/plugin tests + 27 integration/search_quality tests, coverage 90%.
Lệnh đo được ghi trong README (pytest --no-cov -q -m "not search_quality and not integration").
Giấy phép là MIT. README tiếng Anh (README.en.md) vẫn được đồng bộ. Rất hoan nghênh feedback / issue / PR.
Các đề xuất tương thích với AI CLI khác cũng được chào đón.

Chưa có bình luận nào.

Chưa có bình luận nào.