~ nghia-pham.dev _
$ blog $ series $ tags $ about
$ Esc
Type to search posts...

> ls ./blog/

190 posts

  • nf-cc-sync: Pull-Only Sync of ~/.claude/ Between Machines

    A Claude Code skill that syncs ~/.claude/ across machines using a branch-per-machine git layout. Pull-only, key-level merge for settings.json, prefer-newer for skills and rules, never auto-deletes. Plus the two design decisions that came out of real merge accidents.

    May 19, 2026 · ~7 min read
    claude-codeaiclaude-code-toolkitconfig-syncskills
  • nf-ignore: A .gitignore Auditor for AI Tools and Env Files

    A Claude Code skill that audits .gitignore for AI coding tool patterns and env file policy. Detects the project's framework (Vite, Next.js, Nuxt, Astro, SvelteKit, Remix) vs plain Node.js to apply the correct env convention, and patches AI tool entries that only ignore personal files while keeping team-shared configs committed.

    May 19, 2026 · ~6 min read
    claude-codeaiclaude-code-toolkitgitignoreskills
  • nf-direnv: A Per-Repo .envrc With a Dynamic GitHub Token

    A Claude Code skill that sets up .envrc in the current repo with GH_TOKEN resolved dynamically via gh auth, manages .gitignore, and runs direnv allow. Picks the correct gh account for multi-account setups, never writes a plaintext token to disk.

    May 19, 2026 · ~5 min read
    claude-codeaiclaude-code-toolkitskillsdirenv
  • 30 bài LLM bằng agents trong 1 tháng: cái được, cái dở, ~0.5M token

    Tôi vừa publish series 30 bài LLM từ zero trong gần 1 tháng (2026-04-22 đến 2026-05-17) bằng cách viết tay bài 1 làm reference, sau đó spawn Claude Code agents song song viết phần còn lại. Bài này kể lại workflow thực, cost rough estimate, cái hay, cái dở, một moment quirky của agent, và ai phù hợp dùng pattern này.

    May 18, 2026 · ~9 min read
    llmclaude-codeagentsworkflowmeta
  • Wire Anthropic-style SVG diagrams vào Astro blog: CSS vars, palette, 4 pitfalls

    Engineering log của việc thêm Style 2 diagram (palette coral/amber/teal kiểu Anthropic) vào blog Astro vốn dùng terminal mono. CSS vars trong global.css, inline SVG theme-adaptive, decision matrix Mermaid/PNG/extend Style 1/hand-roll, và 4 pitfall gặp khi ship 4 diagram đầu tiên.

    May 18, 2026 · ~8 min read
    svgastrocssdesigndiagrams
  • Agent là gì: LLM cộng tools cộng memory cộng loop

    Bài 1 series AI Agents từ zero. Định nghĩa agent từ góc nhìn dev, 4 thành phần cốt lõi (LLM, tools, memory, control loop), so sánh với chatbot, RPA, traditional code, kèm pseudocode tối giản và pitfall đầu tiên thường gặp.

    May 18, 2026 · ~8 min read
    ai-agentsllmanthropicclaudemental-model
  • AI Agents từ zero: Series Plan

    Roadmap 25 bài về AI agents cho senior dev đã hiểu LLM: control loop, tool use, planning, memory, multi-agent, eval, production. Code from scratch trước, framework sau. Pitfall storytelling thay vì tutorial sạch.

    May 18, 2026 · ~5 min read
    ai-agentsllmanthropicclaudetool-use
  • Control loop: ReAct, agentic loop, điều kiện dừng

    Bài 3 series AI Agents. Vòng lặp cốt lõi của agent: structure, stop conditions, max_iterations, token budget, early termination khi detect loop.

    May 18, 2026 · ~10 min read
    ai-agentsllmcontrol-loopreactanthropic
  • Chain-of-Thought so với structured reasoning

    Bài 10 series AI Agents. CoT prompting vs explicit reasoning steps trong structured output. Khi nào prompt 'think step by step' đủ, khi nào cần schema. Era reasoning model (o1, R1, Claude thinking).

    May 18, 2026 · ~10 min read
    ai-agentsllmcotreasoningstructured-output
  • Build agent từ đầu: 100 dòng Python với Anthropic SDK

    Bài 5 series AI Agents. Hands-on: code agent đầy đủ ~100 dòng Python với Anthropic SDK Claude Sonnet 4.6. Tools file system + shell. Walk-through từng phần code, demo task thực tế.

    May 18, 2026 · ~10 min read
    ai-agentsllmanthropicclaudepython
  • Memory cho agent: context window, scratchpad, summarization

    Bài 4 series AI Agents. Quản lý memory: short-term history, scratchpad notes LLM tự viết, summarization khi vượt context window, long-term store với vector DB.

    May 18, 2026 · ~10 min read
    ai-agentsllmmemorycontext-windowsummarization
  • Plan-and-Execute: tách planning khỏi execution

    Bài 7 series AI Agents. Pattern Plan-and-Execute, LLM lên plan đa-bước trước, executor chạy từng bước. Khác ReAct ở chỗ planning là phase riêng.

    May 18, 2026 · ~11 min read
    ai-agentsllmplanningplan-and-executelanggraph
  • Tree of Thoughts và tree search cho agent

    Bài 8 series AI Agents. Tree of Thoughts (ToT), explore nhiều branch of thought song song, evaluate, pick best. Compute-intensive nhưng giải được task ReAct fail.

    May 18, 2026 · ~10 min read
    ai-agentsllmtree-of-thoughtsplanningreasoning
  • Agent communication: shared state so với message passing

    Bài 17 series AI Agents. Hai cách multi-agent giao tiếp: shared state (blackboard) vs message passing (queue/RPC). Pros/cons, code patterns, state consistency.

    May 18, 2026 · ~10 min read
    ai-agentsllmmulti-agentstate-managementconcurrency
  • Eval cho agent: trace, replay, golden set, regression

    Bài 21 series AI Agents. Eval agent khó hơn eval LLM: nondeterministic, multi-step, có tool. 4 kỹ thuật: trace logging, replay, golden set, regression suite.

    May 18, 2026 · ~12 min read
    ai-agentsllmevaltraceregression
  • Cost và latency: token budget, streaming, prompt caching

    Bài 22 series AI Agents. Optimize cost (token, model tier) và latency (streaming, caching, parallelism). Concrete numbers từ Claude Sonnet 4.6 và Haiku 4.5.

    May 18, 2026 · ~12 min read
    ai-agentsllmcostlatencycaching
  • Failure modes: hallucination, infinite loop, hijacking

    Bài 23 series AI Agents. Catalog các fail mode thực tế: hallucination, infinite loop, goal hijacking, sandbagging. Detection signals và mitigation strategies.

    May 18, 2026 · ~12 min read
    ai-agentsllmfailure-modesreliabilityproduction
  • On-call cho agent: monitoring, alerts, rollback, A/B test

    Bài 25 series AI Agents (bài cuối). Vận hành agent trong production: metrics, alerts, dashboards, rollout strategy, rollback plan, A/B test framework. Closing the loop.

    May 18, 2026 · ~14 min read
    ai-agentsllmproductionmonitoringon-call
  • Security: prompt injection, tool sandboxing, secrets

    Bài 24 series AI Agents. 3 attack surface: prompt injection (chiếm via input), tool sandboxing (chiếm via output), secrets (chiếm via tool call). Mitigation tactics và least-privilege design.

    May 18, 2026 · ~12 min read
    ai-agentsllmsecurityprompt-injectiontool-sandboxing
  • Case study: Anthropic SDK agents và Claude Code agents

    Bài 20 series AI Agents. Phân tích 2 real-world implementation: Anthropic Agent SDK và Claude Code subagent system. Architecture, control flow, design lessons từ practice.

    May 18, 2026 · ~10 min read
    ai-agentsllmanthropicclaude-codesdk
  • Browser automation cho agent: Playwright và computer use

    Bài 13 series AI Agents. Cho agent dùng browser: Playwright (DOM-based) vs Computer Use (vision + click). Use cases, code, cost compare.

    May 18, 2026 · ~11 min read
    ai-agentsllmbrowserplaywrightcomputer-use
  • Code execution sandbox: subprocess, Docker, e2b

    Bài 12 series AI Agents. Cho agent chạy code do LLM viết, an toàn thế nào. Compare subprocess, Docker, e2b cloud sandbox. Security model từng option.

    May 18, 2026 · ~11 min read
    ai-agentsllmsandboxsecuritydocker
  • LangGraph, CrewAI, AutoGen: framework so sánh

    Bài 19 series AI Agents. Compare 3 framework multi-agent phổ biến. LangGraph (state graph), CrewAI (role-based), AutoGen (Microsoft event-driven). Khi nào dùng cái nào, khi nào skip framework.

    May 18, 2026 · ~10 min read
    ai-agentsllmlanggraphcrewaiautogen
  • MCP (Model Context Protocol): chuẩn hoá tool layer

    Bài 15 series AI Agents. MCP, protocol Anthropic open-source để chuẩn hoá tool/resource/prompt layer. Architecture, server vs client, real-world use cases.

    May 18, 2026 · ~9 min read
    ai-agentsllmmcpanthropicclaude-code
  • Multi-agent patterns: supervisor, handoff, debate

    Bài 16 series AI Agents. Khi nào nhiều agent tốt hơn một. 3 pattern: supervisor (1 boss), handoff (chuyền turn), debate (đối đáp). Trade-off compute vs quality.

    May 18, 2026 · ~11 min read
    ai-agentsllmmulti-agentorchestrationpatterns
  • RAG cho agents: retrieval trong vòng lặp, không phải QA

    Bài 14 series AI Agents. RAG cho agent khác RAG cho QA: retrieval là một tool trong loop, agent quyết định khi nào search và query gì. Multi-hop retrieval.

    May 18, 2026 · ~10 min read
    ai-agentsllmragretrievalvector-db
  • ReAct: thought, action, observation cycle

    Bài 6 series AI Agents. Pattern ReAct, LLM nghĩ trước khi hành động, observation kết quả, lặp. Original paper, why it works, code implementation, khi nào skip với modern model.

    May 18, 2026 · ~11 min read
    ai-agentsllmreactreasoningplanning
  • Self-reflection: critic, verifier, retry pattern

    Bài 9 series AI Agents. Agent tự đánh giá output trước khi return. Critic pattern, verifier pattern, retry với feedback. Reflexion paper baseline.

    May 18, 2026 · ~10 min read
    ai-agentsllmreflectioncriticevaluation
  • Specialized agent roles: planner, executor, reviewer

    Bài 18 series AI Agents. Pattern role-based: planner (plan), executor (run), reviewer (verify). Khi nào worth chia role, prompt template từng role, tradeoff cost vs quality.

    May 18, 2026 · ~10 min read
    ai-agentsllmmulti-agentrole-basedprompt-engineering
  • Tool design: schema, validation, idempotency

    Bài 11 series AI Agents. Sâu hơn bài 2: nguyên tắc thiết kế tool tốt, schema design pattern, validation layer, idempotency keys, atomic vs partial action.

    May 18, 2026 · ~11 min read
    ai-agentsllmtool-designschemavalidation
  • Tool use cơ bản: function calling, JSON schema, error handling

    Bài 2 series AI Agents. Cách định nghĩa tool cho LLM, viết JSON schema rõ ràng, handle error đúng cách, và pattern idempotency cho tool có thể retry an toàn.

    May 18, 2026 · ~14 min read
    ai-agentsllmtool-usefunction-callingjson-schema
  • Hermes Agent: AI tự học, persistent memory, chạy trên $5 VPS

    Bài 27 bonus AI Agents series. Deep-dive Hermes Agent từ Nous Research (Feb 2026, 140K+ stars). Self-evolving skills, FTS5 persistent memory, multi-channel (Telegram/Discord/Slack/CLI), self-host trên VPS rẻ. Lessons design self-improving agent.

    May 18, 2026 · ~11 min read
    ai-agentsllmhermesnous-researchopen-source
  • OpenClaw: open-source agent framework đang dẫn đầu 2026

    Bài 26 bonus AI Agents series. Deep-dive OpenClaw, framework agent open-source nổi nhất 2026 (Peter Steinberger, 347K stars). Kiến trúc, agent-loop, multi-model proxy, lessons từ vụ Anthropic third-party ban tháng 4.

    May 18, 2026 · ~11 min read
    ai-agentsllmopenclawopen-sourceagent-framework
  • AgentMemory MCP và hệ memory plain markdown tôi đã tự build

    Tôi đã build pipeline memory cho Claude Code từ vài tháng trước bằng autoMemoryDirectory, folder markdown chia theo project, frontmatter YAML, plus skill nf-dream để consolidate. Tuần này AgentMemory MCP trending GitHub với SQLite, vector embedding, 51 MCP tool, hybrid BM25 cộng vector cộng knowledge graph. Bài này là góc nhìn của người đã đi đường plain markdown soi tool DB-backed: cái nào đáng đổi, cái nào không, và khi nào tôi sẽ thử.

    May 18, 2026 · ~9 min read
    agent-memorymcpclaude-codelong-term-memoryrag
  • Semble: code search cho agent, tiết kiệm token so với grep

    Một agent đang chạy task refactor, nó `grep` ra 12 file, đọc nguyên 800 dòng mỗi file để tìm 1 function, hết context, mất task. Semble (Show HN hôm nay) đề xuất một cách khác: index codebase một lần, query bằng hash + embedding nhỏ, trả về snippet đã chunk theo tree-sitter. Bài này kể lại lý do mình plug Semble vào Claude Code qua MCP, so sánh thẳng với grep trong context của agent (không phải human), và những giới hạn mình note ra sau vài ngày dùng. Không phải tutorial, gần với workflow share hơn.

    May 18, 2026 · ~7 min read
    semblecode-searchmcpclaude-codeai-agents
  • nf-dream: Consolidating Claude Memory Without Losing Your Past Self

    A Claude Code skill that classifies every file in your autoMemoryDirectory as Now, Next, Done, Future, Reference, or Stale, then reorganizes the index, writes a one-page handoff, archives aged session-end states, and dedupes overlapping topics. Project-scoped, snapshot-first, never deletes. Plus the four design decisions that took an incident each to get right.

    May 18, 2026 · ~11 min read
    claude-codeaiclaude-code-toolkitmemoryskills
  • nf-git-workflow: Opting Out of Ask-Before-Every-Commit, Safely

    A Claude Code skill that installs a project-scoped rule overriding the global 'ask before every commit and push' safety check, but only for this one repo. The current branch at install time becomes the protected head; one or more of three modes (worktree-pr, worktree-local-merge, direct-on-head) declares how work lands on it. Plus the four design decisions that took an incident each to get right.

    May 18, 2026 · ~11 min read
    claude-codeaiclaude-code-toolkitgitworkflow
  • nf-memory: Pointing autoMemoryDirectory Without Footguns

    A Claude Code skill that configures autoMemoryDirectory in .claude/settings.local.json, picks the target folder via an interactive picker, optionally migrates existing per-project memory into a shared folder with smart merge, and refuses to point at a path that contains the project itself. Plus the four design decisions that took an incident each to get right.

    May 18, 2026 · ~11 min read
    claude-codeaiclaude-code-toolkitmemoryauto-memory-directory
  • Claude Code từ zero: Series Plan

    Roadmap 25 bài về Claude Code dành cho dev đã quen gõ /commands nhưng muốn hiểu kiến trúc bên dưới. Mental model trước, customization sau: rules, skills, agents, hooks, memory, MCP, worktree, team mode. Mỗi bài đứng độc lập, đọc tuần tự sẽ tích lũy đúng thứ tự.

    May 17, 2026 · ~8 min read
    claude-codeaideveloper-toolsseriestutorial
  • Claude Code là gì: CLI, IDE, Web, SDK và anatomy của 1 session

    Phần lớn dev nghĩ Claude Code là cái terminal có thể code. Thực tế nó có 4 entry point khác nhau, chia sẻ chung một core (model, tool loop, permissions) nhưng hành xử rất khác về state và context. Bài mở hộp đen: anatomy của một session, 5 lớp prompt được dựng mỗi turn, và lý do biết các lớp này quan trọng cho mọi customize sau này.

    May 17, 2026 · ~10 min read
    claude-codeaideveloper-toolstutorialarchitecture
  • autoMemoryDirectory: chia memory theo project hoặc client

    Memory mặc định của Claude Code là per-workdir và không sync. Nếu bạn có nhiều client hoặc nhiều project, không tách memory là recipe cho context leak. Bài này giải thích autoMemoryDirectory, cách cấu hình trong settings.local.json, và ba use case thực tế để giữ context đúng nơi đúng lúc.

    May 17, 2026 · ~6 min read
    claude-codememorydeveloper-toolsworkflowtutorial
  • Branch-per-machine: sync ~/.claude/ giữa các máy

    Bạn có MacBook ở nhà, server homelab, và có thể thêm một laptop nữa. Mỗi máy một bộ CC config. Không sync thì drift. Sync naively thì merge conflict mỗi lần pull. Bài này trình bày pattern branch-per-machine: một git branch cho mỗi máy, workflow để cherry-pick config từ máy khác, và skill tự động hóa quá trình đó.

    May 17, 2026 · ~7 min read
    claude-codedeveloper-toolsworkflowtutorialgit
  • Auto-memory: file-based, MEMORY.md index, các loại memory

    Claude Code không có database hay embedding store bên trong. Memory là một folder chứa file .md, và MEMORY.md là index được nạp vào prompt mỗi session. Bài này giải thích cấu trúc folder, 4 type memory, cách model đọc index, và khi nào nên hoặc không nên save.

    May 17, 2026 · ~9 min read
    claude-codememorydeveloper-toolstutorialworkflow
  • CLAUDE.md và rules: kiến trúc instructions hierarchical, path-scoping

    Bài 6 đi sâu vào L2 của prompt stack: ba mức CLAUDE.md từ global đến project, và cách rule modular với frontmatter paths dùng progressive context để chỉ load instruction cần thiết theo file đang touch.

    May 17, 2026 · ~8 min read
    claude-codedeveloper-toolstutorialarchitectureworkflow
  • Context window: prompt được dựng thế nào mỗi turn

    Mỗi lần bạn nhấn Enter, Claude Code không chỉ gửi câu hỏi của bạn lên model. Binary lắp ráp 5 lớp riêng biệt thành một prompt hoàn chỉnh trước khi gọi API. Bài này mổ xẻ từng lớp đó, kèm dữ liệu thực từ session log và số token cache để thấy rõ chi phí của mỗi turn.

    May 17, 2026 · ~8 min read
    claude-codecontext-windowarchitecturecachetutorial
  • Compaction và prompt cache: cách CC quản lý conversation dài

    Context window 1M token nghe to, nhưng một session làm việc thực vẫn chạm giới hạn sau vài giờ. Bài này đi sâu vào compaction: binary detect khi nào trigger, nó làm gì với history cũ, và tại sao session dài đôi khi quên chi tiết làm 30 phút trước. Kèm theo: prompt cache 1h TTL hoạt động thế nào và tại sao nó quan trọng hơn bạn nghĩ.

    May 17, 2026 · ~11 min read
    claude-codedeveloper-toolstutorialcontext-windowcompaction
  • Anatomy của 1 hook production-grade: shell script và exit codes

    Hook khác skill ở chỗ nó không phải gợi ý cho model mà là code chạy ngoài vòng lặp model, không thể bị bỏ qua. Bài này đi từ khái niệm đến script thực tế: chọn lifecycle event, parse stdin, dùng exit code đúng, handle idempotency và timeout, rồi wire vào settings.json. Bài cuối của series.

    May 17, 2026 · ~11 min read
    claude-codehooksdeveloper-toolstutorialworkflow
  • Hooks: lifecycle events, exit codes, và các kiểu hook thực tế

    Hook là shell script wired vào lifecycle event của Claude Code qua settings.json. Khác hoàn toàn với skill hay subagent: hook chạy ngoài model loop, không cần model invoke, không tiêu token. Bài này giải phẫu cơ chế hook, exit code semantics, stdin JSON payload, và hai ví dụ thực tế từ worktree đến notification.

    May 17, 2026 · ~8 min read
    claude-codehooksdeveloper-toolsworkflowworktree
  • Mobile coding qua Telegram bridge

    Laptop ở nhà, bạn đang trên tàu, nhưng cần CC chạy một task deploy hoặc fix typo gấp. Bài này mô tả pattern dùng Telegram bot làm bridge điều khiển Claude Code từ điện thoại: architecture, các thách thức kỹ thuật, và những chỗ dễ làm sai về security.

    May 17, 2026 · ~9 min read
    claude-codedeveloper-toolsworkflowarchitecturehooks
  • MCP servers: context bên ngoài, khi nào tự build, khi nào dùng có sẵn

    MCP (Model Context Protocol) là cơ chế để Claude Code kết nối ra external system: database, GitHub, Slack, browser. Bài này giải thích cách MCP hoạt động, khác hooks ở chỗ nào, và khi nào bạn nên tự build thay vì dùng server có sẵn.

    May 17, 2026 · ~10 min read
    claude-codemcpdeveloper-toolstoolsarchitecture
  • Memory submodule pattern: share memory cross-machine an toàn

    Memory của Claude Code là file-based, mỗi máy giữ một bản độc lập. Dev có nhiều máy thì memory không tự đồng bộ. Bài này trình bày pattern dùng git submodule để biến memory folder thành repo riêng, sync được giữa MacBook, server, và mọi máy khác mà không cần tool bổ sung.

    May 17, 2026 · ~6 min read
    claude-codememorygitdeveloper-toolsworkflow
  • Cross-agent communication: tránh race, slice theo file scope

    Chạy nhiều agent song song không đồng nghĩa với làm việc nhanh hơn nếu hai agent cùng đụng vào một file. Bài này phân tích ba cấp isolation, anti-pattern hay gặp nhất, và các coordination pattern giúp N agent chạy cùng lúc mà không có race condition.

    May 17, 2026 · ~10 min read
    claude-codeagentsworkflowarchitectureworktree
  • Plan mode: state file, exit prompt, plan vs todo vs memory

    Plan mode là cơ chế CC buộc model viết kế hoạch trước và chờ user approve trước khi thực thi. Bài giải thích workflow, file state, khi nào cần dùng, và sự khác biệt giữa plan, todo, và memory.

    May 17, 2026 · ~8 min read
    claude-codedeveloper-toolstutorialworkflowtools
  • Permission model: ask, auto, acceptEdits, bypassPermissions và deny list

    Bốn mode permission của Claude Code, cách cấu hình allowlist và deny list trong settings.json, và lý do tôi đã mất một bucket production để học bài này. Bài này cũng cover PreToolUse hook và cách truyền mode khi spawn agent.

    May 17, 2026 · ~8 min read
    claude-codepermissionsdeveloper-toolstutorialworkflow
  • Plugins: khác skill thế nào, marketplace, khi nào dùng

    Plugin không phải skill lớn hơn. Đó là một cơ chế đóng gói khác: nhiều thành phần liên quan được bundle vào một đơn vị cài đặt. Bài này phân biệt plugin với skill, giải thích marketplace, và chỉ ra khi nào nên tự build thay vì dùng có sẵn.

    May 17, 2026 · ~7 min read
    claude-codedeveloper-toolstutorialpluginsworkflow
  • Settings.json load-bearing: env, permissions, hooks, plugins

    Ba file settings của Claude Code, thứ tự precedence, và các field thực sự điều khiển hành vi: permissions allow/deny, hooks lifecycle, env vars theo nhóm chức năng. Biết cái nào cần commit, cái nào phải gitignore.

    May 17, 2026 · ~8 min read
    claude-codedeveloper-toolspermissionshooksplugins
  • Anatomy của 1 skill production-grade: từ ý tưởng đến SKILL.md

    Skill trong Claude Code không phải là macro đơn giản. Một skill tốt có trigger rõ ràng, scope hẹp, xử lý failure, và lifecycle rõ ràng như bất kỳ module code nào. Bài này đi từng bước build 1 skill từ ý tưởng đến file SKILL.md cuối cùng, kèm các anti-pattern thường gặp.

    May 17, 2026 · ~9 min read
    claude-codedeveloper-toolsskillsworkflowtutorial
  • Skills: SKILL.md frontmatter, slash command, và disable-model-invocation

    Skill trong Claude Code không phải là tính năng built-in mà là một convention thư mục. Bài này mổ xẻ anatomy của một skill từ frontmatter, body, đến cách model quyết định khi nào trigger, và khi nào bạn cần tắt auto-trigger để tránh skill chạy lúc không mong muốn.

    May 17, 2026 · ~8 min read
    claude-codedeveloper-toolsskillstutorialworkflow
  • Subagents: anatomy, tools whitelist, system prompt, và examples block

    Subagent trong Claude Code không phải là session chia sẻ với main session. Nó là một session riêng biệt, có persona riêng, có tool subset riêng, và chạy độc lập. Bài này mổ xẻ cấu trúc một agent definition file: frontmatter, body system prompt, examples block, và cách spawn từ main session.

    May 17, 2026 · ~8 min read
    claude-codeagentsdeveloper-toolstutorialarchitecture
  • TeamCreate và SendMessage: persistent addressable agents

    Bài này đi vào team mode của Claude Code: cách tạo agent có tên, có thể resume xuyên turn qua SendMessage, khác gì so với one-shot Agent call, và khi nào dùng team thay vì spawn agent thông thường.

    May 17, 2026 · ~8 min read
    claude-codeagentsdeveloper-toolstutorialarchitecture
  • Spawning patterns: foreground, background, sequential, teammate

    Main session khởi tạo subagent theo 4 pattern khác nhau, mỗi pattern phù hợp với một nhóm tình huống cụ thể. Hiểu 4 pattern này giúp bạn ra quyết định đúng thay vì spawn agent theo quán tính.

    May 17, 2026 · ~8 min read
    claude-codeagentsworkflowarchitecturedeveloper-tools
  • Tool use loop: vòng giữa model và tool, retry, parallel calls

    Bài 1 giới thiệu tool loop trong 5 bước. Bài này đi sâu vào cơ chế bên dưới: khi nào model gửi nhiều tool call trong một turn, binary executor xử lý thế nào, lỗi được handle ra sao, và điều gì khiến vòng lặp dừng lại. Kèm ví dụ cụ thể 1 turn với 3 tool call chạy song song.

    May 17, 2026 · ~9 min read
    claude-codedeveloper-toolsarchitecturetoolshooks
  • Worktree hotfix trong khi main session đang debug production

    Scenario thực tế nhất của worktree agent: main session đang tail log, edit .env.production, scp script lên server. Một file cần hotfix. Nếu bạn checkout sang branch mới, mất hết scratch state. Worktree agent là pattern đúng, và bài này cho thấy chính xác cách làm.

    May 17, 2026 · ~7 min read
    claude-codeworktreeagentsworkflowdeveloper-tools
  • Worktree isolation: vì sao tách working tree và base branch hook

    Khi spawn agent mà để nó edit chung working tree với main session, bạn đang chấp nhận race condition và stale view. Bài này phân tích isolation: worktree, cách CC tạo git worktree riêng, tại sao base branch phải là HEAD thay vì origin/main, và hook WorktreeCreate làm gì bên dưới.

    May 17, 2026 · ~7 min read
    claude-codedeveloper-toolsworktreeagentshooks
  • Một vài session không phải là không xuất hiện, mà là xuất hiện trễ

    Bóc tách kiến trúc daemon của Claude Code 2.x: roster.json, spare worker pool, và cơ chế orphan adoption. Tại sao session foreground gõ `claude` trong terminal có thể không bao giờ tự xuất hiện trong `claude agents`, và `/bg` là cách deterministic duy nhất để buộc nó hiện ra.

    May 17, 2026 · ~13 min read
    claude-codedaemoninternalsfleet-viewarchitecture
  • Cách start session trong folder cụ thể từ `claude agents`

    FleetView dispatch session mới với cwd lấy từ chính process đang chạy `claude agents`. Bài này chỉ ra cách đúng (và một anti-pattern phổ biến) để session mới được spawn đúng thư mục.

    May 17, 2026 · ~9 min read
    claude-codefleet-viewcwdhowtoworkflow
  • Background session và worktree: setting worktree.bgIsolation từ 2.1.143

    Từ CC 2.1.143, có setting worktree.bgIsolation cho phép background session (session chạy nền, không phải subagent) edit working copy trực tiếp thay vì bị force vào worktree riêng. Bài giải thích tại sao background session cần một cơ chế isolation khác, khi nào nên tắt isolation, và khác gì so với isolation: worktree khi spawn subagent.

    May 17, 2026 · ~8 min read
    claude-codedeveloper-toolsworktreeworkflowarchitecture
  • FleetView: một màn hình thay cho 6 tmux pane và 3 tab desktop

    Trước FleetView, một dev dùng Claude Code nhiều project sẽ có 6 tmux pane, 2 Code tab trong Claude desktop, và một SSH session trên phone để thỉnh thoảng attach vào homelab xem agent batch đã xong chưa. Bài này kể lại workflow đó, sáu pain point cụ thể, và cách FleetView (TUI `claude agents`) gỡ được phần lớn trong số chúng. Không phải tất cả.

    May 17, 2026 · ~14 min read
    claude-codefleet-viewtuiworkflowtmux
  • fullstack-engineer: subagent persona for backward-compatible code changes

    A Claude Code subagent that treats every edit as potentially breaking. It reads before it writes, prefers additive changes over rewrites, and surfaces backward-compat risks before touching a file. Persona file plus a walkthrough of where the default agent falls short.

    May 17, 2026 · ~10 min read
    claude-codeclaude-code-toolkitagentssubagentbackward-compatibility
  • ui-ux-designer: subagent persona for design feedback and visual polish

    A Claude Code subagent that thinks design-first but implements code-first. It audits the current UI, lists concrete issues with values (contrast ratios, spacing, type scales), proposes grouped changes, then writes the code. Persona file plus a walkthrough where the default agent stops at functional and this one keeps going to polished.

    May 17, 2026 · ~10 min read
    claude-codeclaude-code-toolkitagentssubagentui
  • svg-diagram-specialist: subagent persona for inline SVG diagrams

    A Claude Code subagent that draws one inline SVG diagram per response with strict layout math, accessibility, dark-mode CSS variables, and a shape vocabulary for infra concepts. Persona file plus a walkthrough of what the default agent gets wrong when you ask it for a diagram.

    May 17, 2026 · ~9 min read
    claude-codeclaude-code-toolkitagentssubagentsvg
  • Alert rules trong Kibana: ES query, threshold và burn rate

    Hướng dẫn dựng alert rule trong Kibana 8.x: ES query rule, threshold rule, burn rate cho SLO. Cover trigger condition, schedule, evaluation logic, pitfall của time window và pattern để giảm noise.

    May 17, 2026 · ~8 min read
    kibanaelasticsearchelkalertingmonitoring
  • API keys nâng cao: Document-Level Security và Field-Level Security

    Khoá truy cập theo từng document và che field nhạy cảm bằng DLS và FLS. Hướng dẫn tạo API key có role descriptor scope tới tenant, mask PII, cộng quyền multi-role và pitfall query templating.

    May 17, 2026 · ~7 min read
    kibanaelasticsearchelksecurityapi-keys
  • Audit logging và compliance: ghi nhận ai làm gì cho SOC2

    Bật audit log Elasticsearch và Kibana, chọn event quan trọng, ship sang index riêng, giữ trail 1 năm và bảng câu hỏi auditor SOC2 hay hỏi với truy vấn KQL kèm sẵn.

    May 17, 2026 · ~7 min read
    kibanaelasticsearchelkauditcompliance
  • claude-authoring: A Skill for Writing Claude Code Rules, Skills, and Plans

    A Claude Code skill that authors rules, skills, and plans correctly the first time. Routes by task type to a reference standard, enforces imperative form, kebab-case naming, no second person, and uses the right format (plain markdown for rules, YAML frontmatter for skills, status tracking for plans).

    May 17, 2026 · ~7 min read
    claude-codeclaude-code-toolkitskillsrulesauthoring
  • claude-changelog: Diff the Latest Claude Code Release Against Your Setup

    A Claude Code skill that fetches the latest Claude Code changelog, scans ~/.claude/, and suggests adjustments your setup may need after a version upgrade. Read only by design, never auto-applies changes.

    May 17, 2026 · ~7 min read
    claude-codeclaude-code-toolkitskillschangelogupgrades
  • Sharing my Claude Code rules: agent safety and worktree isolation

    The global rule that decides when to delegate code edits to a sub-agent, when to put that agent in a worktree, and how to integrate the result without breaking the main session's working tree. Built from two real incidents.

    May 17, 2026 · ~9 min read
    claude-codeclaude-code-toolkitagentsworktreerules
  • Sharing my Claude Code rules: code style, no barrel files

    A tiny rule that bans barrel index.ts files and enforces direct component naming. Cheap to write, expensive to skip. The rule pays back every time the model is tempted to generate index.ts re-exports.

    May 17, 2026 · ~6 min read
    claude-codeclaude-code-toolkitcode-styletypescriptrules
  • Sharing my Claude Code rules: development, no mocks and no new endpoints

    A rule that forbids the model from generating mock data, modifying global API endpoints, or inventing new utilities when an existing helper already covers the case. The rule that makes Claude Code feel like a teammate instead of a stranger.

    May 17, 2026 · ~7 min read
    claude-codeclaude-code-toolkitdevelopmentrulesapi
  • Sharing my Claude Code rules: git commit format and multi-account workflow

    A global rule for commit message format, branch naming, GitHub CLI account switching, and the merge patterns that protect a debug session from being reset by a stray checkout. The biggest rule file in my setup.

    May 17, 2026 · ~8 min read
    claude-codeclaude-code-toolkitgitgithubrules
  • Sharing my Claude Code rules: guide-user progressive disclosure

    A rule that tells Claude Code how to walk a user through a procedure. One step at a time when the procedure is non-trivial. Anchor points for confirmation. Stop guessing when the user says I don't see that.

    May 17, 2026 · ~7 min read
    claude-codeclaude-code-toolkitrulesuxdocumentation
  • Sharing my Claude Code rules: local folder, credentials, and breadcrumbs

    The convention for the .local/ folder. Where credentials and personal project context live. Why every move out of a tracked path needs a breadcrumb so the next session can find what moved.

    May 17, 2026 · ~7 min read
    claude-codeclaude-code-toolkitrulescredentialssecurity
  • Sharing my Claude Code rules: safety, no auto-commit

    A short global rule that forbids Claude Code from running git commit or git push unless I type the explicit word. It cost me one bad push to write down. Now it lives in every session.

    May 17, 2026 · ~6 min read
    claude-codeclaude-code-toolkitsafetygitrules
  • Sharing my Claude Code rules: shell compatibility, zsh arrays and globs

    A rule that documents the three places zsh and bash diverge enough to break the model's shell snippets. Variable word-splitting, no-match globs, array indexing. Small differences, large failures, fixable with one rule.

    May 17, 2026 · ~6 min read
    claude-codeclaude-code-toolkitrulesshellzsh
  • Kibana Connectors: Slack, Email, Webhook và PagerDuty setup và best practices

    Hướng dẫn cấu hình connector trong Kibana 8.x cho Slack, Email (SMTP/Exchange), Webhook và PagerDuty. Cover security pattern, template variable, secret management và pitfall khi action không gửi notification.

    May 17, 2026 · ~9 min read
    kibanaelasticsearchelkalertingconnectors
  • Dashboard-as-code workflow: NDJSON, Git và CI/CD cho Kibana

    Workflow biến Kibana dashboard thành code: export NDJSON, commit Git, validate trong CI và import tự động qua API. Hết cảnh dashboard biến mất khi cluster rebuild hoặc người tạo nghỉ việc.

    May 17, 2026 · ~8 min read
    kibanaelasticsearchelkdevopscicd
  • Deduplication và throttling trong Kibana: tránh alert fatigue

    Hướng dẫn dedup và throttle alert trong Kibana 8.x: notifyWhen, throttle interval, group alerts, dedup_key cho PagerDuty và patterns để giảm noise mà không miss critical alert.

    May 17, 2026 · ~8 min read
    kibanaelasticsearchelkalertingsre
  • Disk full và shard imbalance: quy trình recovery Elasticsearch không mất data

    Runbook xử lý sự cố disk full và shard imbalance trên Elasticsearch: gỡ flood-stage read-only, free disk an toàn, force reroute shard, scale node và prevent tái diễn. Pattern thực chiến không mất data.

    May 17, 2026 · ~8 min read
    kibanaelasticsearchelkopsrecovery
  • Distributed training: DP, DDP, FSDP, pipeline parallel

    Bài 17 series LLM từ zero. Khi model lớn quá 1 GPU, phải chia. Có 4 cách chia: replicate (DP/DDP), shard weights (FSDP/ZeRO), shard layers (pipeline parallel), shard matmul (tensor parallel). Bài này giải thích từng cái và khi nào nên dùng cái nào.

    May 17, 2026 · ~9 min read
    llmaimachine-learningtrainingdistributed-training
  • DPO và RLHF: alignment với preference data

    Bài 20 series LLM từ zero. Sau SFT là alignment. RLHF dùng reinforcement learning, DPO bỏ RL bằng một loss đơn giản hơn. Bài này giải thích Bradley-Terry model, KL penalty, reward hacking, và lý do DPO đang dần thay thế PPO trong production.

    May 17, 2026 · ~9 min read
    llmaimachine-learningalignmentrlhf
  • Elasticsearch query chậm: profiler, slow log và shard distribution

    Debug query Elasticsearch chậm theo bài bản: bật slow log, đọc profile API, hiểu shard distribution và segment merge. Pattern fix thường gặp cho query phức tạp và aggregation lớn.

    May 17, 2026 · ~8 min read
    kibanaelasticsearchelkperformancedebug
  • Evaluation: MMLU, GSM8K, HumanEval, custom benchmark

    Một model claim 92% MMLU, model khác 89%. Có nghĩa là model A tốt hơn không? Câu trả lời ngắn: chưa chắc. Bài cuối series mở câu hỏi sống còn của AI engineering: làm sao đánh giá LLM đúng cách, benchmark nào đáng tin, và xây custom benchmark cho use case của bạn.

    May 17, 2026 · ~10 min read
    llmaimachine-learningevaluationbenchmark
  • Hands-on fine-tune Llama-3 với dataset tiếng Việt LoRA $20 GPU

    Bài 21 series LLM từ zero, capstone Part 5. Tutorial step-by-step fine-tune Llama-3-8B với dataset tiếng Việt trên GPU cloud rental ~$20. Tổng hợp LoRA, QLoRA, SFT đã học từ bài 18-19. Sau bài này bạn có một model fine-tuned VN thực của riêng mình.

    May 17, 2026 · ~9 min read
    llmaimachine-learningfine-tuninglora
  • Index Lifecycle Management (ILM): hot/warm/cold/delete và shrinking

    Thiết kế ILM policy cho log index: rollover theo size, shrink xuống 1 shard, force-merge, freeze và delete. Kèm bảng node tier, rollover alias và pitfall data stream với rollover thủ công.

    May 17, 2026 · ~8 min read
    kibanaelasticsearchelkilmstorage
  • Kibana API tự động hoá: bulk user creation và mass dashboard update

    Hướng dẫn dùng Kibana REST API cho automation thực chiến: tạo hàng loạt user và role, cập nhật nhiều dashboard cùng lúc, wrap API thành CLI nội bộ. Pattern retry, pagination và error handling production-grade.

    May 17, 2026 · ~7 min read
    kibanaelasticsearchelkautomationrest-api
  • Kibana không load được: checklist debug từ browser tới Elasticsearch

    Quy trình debug khi Kibana không lên: kiểm tra browser console, network, Kibana server logs, kết nối Elasticsearch, cluster health và disk. Mỗi layer có symptom và fix riêng.

    May 17, 2026 · ~9 min read
    kibanaelasticsearchelkdebugtroubleshooting
  • Kibana behind reverse proxy: Nginx, Cloudflare với XSRF

    Đặt Kibana sau Nginx hoặc Cloudflare đúng cách: server.publicBaseUrl, XSRF header, websocket upgrade, kích thước header và pitfall khi Cloudflare strip header kbn-xsrf.

    May 17, 2026 · ~8 min read
    kibanaelasticsearchelkreverse-proxynginx
  • KV cache và PagedAttention: tăng throughput inference

    Inference LLM chậm không phải vì model lớn mà vì mỗi token mới phải tính lại attention với toàn bộ token trước đó. KV cache giải quyết bằng cách lưu kết quả trung gian. PagedAttention giải quyết vấn đề KV cache lãng phí memory. Hai kỹ thuật, ba lần tăng tốc.

    May 17, 2026 · ~10 min read
    llmaimachine-learninginferencekv-cache
  • LLM Agents: ReAct, tool use, planning, multi-step reasoning

    Một LLM trả lời câu hỏi là một thứ. Một LLM tự lên kế hoạch, gọi tool, đọc kết quả, sửa kế hoạch, lặp lại cho đến khi xong nhiệm vụ, là thứ khác hoàn toàn. Bài viết mở mental model agent, ReAct pattern, tool use, kèm code Python loop tối giản.

    May 17, 2026 · ~10 min read
    llmaimachine-learningagentsreact
  • Log shippers đối chiếu: Filebeat, Fluentd, Vector cho ELK stack

    So sánh thực chiến ba log shipper phổ biến nhất cho ELK stack: Filebeat của Elastic, Fluentd của CNCF và Vector của Datadog. Resource footprint, ngôn ngữ pipeline, performance, debugging và lựa chọn theo use case.

    May 17, 2026 · ~8 min read
    kibanaelasticsearchelkloggingdevops
  • Long context: RoPE scaling, YaRN, ALiBi extrapolation

    Llama-3 train context 8k. Llama-3.1 hỗ trợ 128k. Gemini quảng cáo 2M. Model không retrain từ đầu, chỉ điều chỉnh cách encode position. Bài viết mở RoPE, RoPE scaling, YaRN, ALiBi, và cách phân biệt context dài thật vs quảng cáo.

    May 17, 2026 · ~9 min read
    llmaimachine-learninglong-contextrope
  • LoRA và QLoRA: parameter-efficient fine-tuning

    Bài 18 series LLM từ zero. Fine-tune full Llama-3-8B tốn 60GB VRAM. LoRA cắt xuống 1.5%, vẫn giữ 95% performance. QLoRA cắt thêm bằng 4-bit quantization, fit 7B model trong 8GB VRAM. Bài này giải thích low-rank decomposition, code triển khai với peft, và khi nào nên dùng cái nào.

    May 17, 2026 · ~9 min read
    llmaimachine-learningfine-tuninglora
  • Maps: geo visualization cho IoT và telemetry trong Kibana

    Hướng dẫn dùng Kibana Maps để render dữ liệu địa lý từ IoT, telemetry và log có toạ độ. Cover geo_point mapping, layer types, heatmap, cluster, choropleth và pitfall hay gặp khi data từ device đẩy lên Elasticsearch.

    May 17, 2026 · ~9 min read
    kibanaelasticsearchelkmapsgeo
  • Mixed precision FP16 BF16 và gradient checkpointing

    Bài 16 series LLM từ zero. Train 7B model trên GPU 24GB là khác biệt giữa OOM step đầu và chạy được. Mixed precision cắt memory một nửa, gradient checkpointing cắt thêm 30-40%. Bài này giải thích tại sao FP16 không đủ, BF16 thay thế nó, và checkpointing trade compute cho memory.

    May 17, 2026 · ~9 min read
    llmaimachine-learningtrainingmixed-precision
  • Mixture of Experts (MoE): Mixtral, DeepSeek architecture

    Mixtral-8x7B có 47 tỷ params nhưng mỗi token chỉ kích hoạt 13 tỷ. DeepSeek-V3 671B nhưng chỉ active 37B mỗi forward pass. Đây là MoE: kiến trúc cho phép scale model lên kích thước khổng lồ mà compute không bùng nổ. Bài viết mở MoE từ ý tưởng đến triển khai.

    May 17, 2026 · ~9 min read
    llmaimachine-learningmoemixtral
  • nf-blog: Publish a White-Labeled Post to a Personal Blog From a Claude Code Session

    A Claude Code skill that turns a tutorial written in the current session into a blog post on a personal blog, with mandatory white-label audit, Vietnamese-aware slug generation, series support, and an Astro build verification before deploy.

    May 17, 2026 · ~7 min read
    claude-codeclaude-code-toolkitskillsblogastro
  • nf-claude-restructure: Migrate Legacy CLAUDE.md Into Modular .claude/rules/

    A Claude Code skill that fetches the latest Claude Code documentation, analyzes existing CLAUDE.md and CLAUDE.local.md files, and splits content into global ~/.claude/rules/ vs project ./.claude/rules/ based on auto-detected scope. Asks for output mode, never overwrites existing files.

    May 17, 2026 · ~7 min read
    claude-codeclaude-code-toolkitskillsrulesclaude-md
  • Performance tuning Elasticsearch: JVM heap, field caps cache và merge throttling

    Bài cuối series Kibana từ A đến Z. Tuning sâu Elasticsearch ở production: JVM heap sizing, GC tuning, field caps cache, segment merge throttling, refresh interval và circuit breaker.

    May 17, 2026 · ~9 min read
    kibanaelasticsearchelkperformancetuning
  • Quantization: INT8, INT4, GGUF, AWQ và BitNet 1.58-bit

    Llama-3-70B nặng 140GB ở FP16. Sau khi quantize INT4 còn 35GB, chạy được trên một con GPU 48GB hoặc CPU 64GB RAM. Bài viết mở hộp quantization: tại sao nén được, nén kiểu gì, mất gì khi nén, và khi nào nên chọn GGUF vs AWQ vs GPTQ.

    May 17, 2026 · ~8 min read
    llmaimachine-learningquantizationinference
  • RAG: retrieval-augmented generation từ vector DB tới prompt

    Bạn muốn LLM trả lời theo tài liệu công ty mà không fine-tune. Câu trả lời ai cũng nghe: RAG. Nhưng RAG không phải một feature, nó là một pipeline 5 bước, và mỗi bước có hàng tá lỗi có thể xảy ra. Bài viết mở pipeline RAG từ chunking đến prompt construction, kèm code Chroma chạy được.

    May 17, 2026 · ~10 min read
    llmaimachine-learningragvector-database
  • Reasoning models: o1, R1, chain-of-thought training

    OpenAI o1 ra 9/2024 đánh bại GPT-4o trong toán và code dù model nhỏ hơn. DeepSeek R1 cuối 2024 open source kèm paper, phơi bày công thức. Reasoning model không phải prompt engineering, mà là cách train mới: thưởng cho việc suy nghĩ trước khi trả lời.

    May 17, 2026 · ~9 min read
    llmaimachine-learningreasoningo1
  • Scaling laws: Chinchilla, compute-optimal, data efficient

    Bài 15 series LLM từ zero. Scaling laws là kinh tế học của LLM. Bao nhiêu parameter, bao nhiêu data, bao nhiêu compute là tối ưu? Kaplan 2020, Chinchilla 2022, và những hệ quả của chúng đến Llama-3 hôm nay. Hiểu được scaling laws là biết tính cost trước khi pretrain.

    May 17, 2026 · ~8 min read
    llmaimachine-learningscaling-lawschinchilla
  • Serving frameworks: vLLM, llama.cpp, Ollama, bitnet.cpp đối chiếu

    Cùng một model Llama-3-8B Q4 chạy trên vLLM cho throughput 2000 tokens/s, trên Ollama cho 40 tokens/s. Khác biệt 50 lần không phải vì engine tệ mà vì mục đích khác nhau. Bài viết phân biệt 4 serving framework theo trục concurrency, hardware, ops complexity.

    May 17, 2026 · ~9 min read
    llmaimachine-learningvllmllama-cpp
  • SFT: supervised fine-tuning với instruction dataset

    Bài 19 series LLM từ zero. SFT là bước biến một pretrained model thành một instruction-following assistant. Bài này dissect data format, chat template, loss masking, và cách build SFT pipeline thực tế bằng trl library. Code chạy được trên Colab free.

    May 17, 2026 · ~8 min read
    llmaimachine-learningfine-tuningsft
  • SLO tracking trong Kibana: SLI, error budget và alert progression

    Hướng dẫn dựng SLO với Kibana 8.x: định nghĩa SLI từ log, cấu hình Service Level Objective, tính error budget, và setup alert progression theo Google SRE Workbook (burn rate multi-window).

    May 17, 2026 · ~8 min read
    kibanaelasticsearchelkslosre
  • Snapshot & Restore: backup ES lên S3, disaster recovery

    Cấu hình S3 snapshot repository, Snapshot Lifecycle Management (SLM), restore index, test DR và bảng RPO/RTO so sánh các chiến lược backup cluster Elasticsearch.

    May 17, 2026 · ~8 min read
    kibanaelasticsearchelksnapshotbackup
  • Spaces: tách dev/staging/prod và team con cùng cluster Kibana

    Dùng Kibana Spaces để chia dev, staging, prod và team con trên cùng một cluster. Hướng dẫn tạo space, copy saved object, default route, disabled features và pitfall với index pattern dùng chung.

    May 17, 2026 · ~8 min read
    kibanaelasticsearchelkspacesmulti-tenant
  • Terraform và Kibana: quản lý saved objects, rules, connectors như infrastructure

    Hướng dẫn dùng Terraform provider Elastic Stack để declarative manage saved objects, alert rules và connectors của Kibana. State management, dependency graph, migration từ NDJSON workflow.

    May 17, 2026 · ~8 min read
    kibanaelasticsearchelkterraformiac
  • TLS/SSL end-to-end: cert giữa Kibana-ES-Beats và public endpoint

    Setup TLS cho Elasticsearch transport, HTTPS giữa Kibana-ES, mTLS cho Beats và rotate cert không downtime. Kèm elasticsearch-certutil, keystore và pitfall verification_mode.

    May 17, 2026 · ~8 min read
    kibanaelasticsearchelktlsssl
  • Training loop: forward, backward, optimizer, lr schedule

    Mở Part 4 của series LLM từ zero. Training loop là phần code mọi research engineer phải viết hàng ngày, nhưng ít dev thực sự hiểu từng dòng. Bài này dissect 5 thành phần: forward pass, loss, backward, optimizer step, lr schedule. Code PyTorch chạy được, không phải pseudo.

    May 17, 2026 · ~9 min read
    llmaimachine-learningtrainingpytorch
  • Upgrade ELK: minor version in-place và major cluster-swap

    Hai chiến lược upgrade ELK production: minor version rolling restart in-place và major version cluster-swap dual-write. Kèm checklist tiền upgrade, deprecation API, downgrade plan và pitfall ILM/template incompatibility.

    May 17, 2026 · ~10 min read
    kibanaelasticsearchelkupgradedevops
  • Users, Roles, RBAC: mô hình phân quyền Kibana 8.x

    Hiểu mô hình RBAC trong Kibana 8.x: cluster privileges, index privileges, Kibana feature privileges và cách map user qua native realm hoặc SSO để chia quyền theo team.

    May 17, 2026 · ~8 min read
    kibanaelasticsearchelkrbacsecurity
  • Visualization pitfalls: lỗi hay gặp với aggregation và time bucket trong Kibana

    Tổng hợp các lỗi thường gặp khi dựng dashboard Kibana: cardinality đếm trùng, terms aggregation cắt mất nhóm nhỏ, time bucket lệch múi giờ, sum trên doc_values vs source và cách tránh báo cáo sai số liệu.

    May 17, 2026 · ~8 min read
    kibanaelasticsearchelkaggregationdashboard
  • AI agent local: pattern cũ, blast radius mới

    Self-hosted AI agent (OpenClaw, gptme, AutoGPT, LangChain agents) thực chất là ChatOps đã có từ 2000s với LLM thay parser. Pattern giống Slack bot, Zapier, n8n bạn dùng hằng ngày, nhưng blast radius khác hẳn: full shell access, prompt injection thành privilege escalation, supply chain qua skill cộng đồng. Bài này strip hype kỹ thuật, đo resource thật sự cần, và 7 câu hỏi trước khi cài lên máy có dữ liệu cá nhân.

    May 11, 2026 · ~10 min read
    aiagentself-hostedsecuritychatops
  • Claude Code Toolkit: Sharing the Customizations I Actually Use

    An ongoing series where I publish, white-labeled, the Claude Code customizations I rely on day-to-day. Skills, hooks, rules, subagents, and slash commands. Each post explains one artifact, the problem it solves, and the patterns inside it that you can copy or adapt.

    Apr 27, 2026 · ~5 min read
    claude-codeaideveloper-toolsclaude-code-toolkitskills
  • nf-agents: Spawning Claude Code Teams Without Footguns

    A Claude Code skill that wraps team and agent spawning into five named modes, runs a four-line pre-flight check, and bakes the cooperative shutdown protocol into the workflow. Plus the four design decisions that took an incident each to get right.

    Apr 27, 2026 · ~15 min read
    claude-codeaiclaude-code-toolkitagentstmux
  • LLM hoạt động thế nào: mental model cho dev

    Bạn gõ câu hỏi vào ChatGPT, 3 giây sau nhận được câu trả lời. Ở giữa có gì? Bài viết mở hộp đen: tokenize, embed, attention, sample. Không dùng một công thức toán nào, chỉ mental model cho dev đã quen code nhưng lần đầu đọc kỹ về LLM.

    Apr 22, 2026 · ~16 min read
    llmaimachine-learningtransformertutorial
  • Calculus cho LLM: gradient, chain rule, backprop intuition

    Đạo hàm nghe sợ nhưng cốt lõi chỉ là đo độ dốc. Gradient là đạo hàm của hàm nhiều biến. Chain rule là cách chuyền gradient ngược qua nhiều layer. Backprop = chain rule áp dụng có hệ thống. Bài này xây intuition cho dev, không giải bài tập toán.

    Apr 22, 2026 · ~10 min read
    llmaimachine-learningmathcalculus
  • LLM từ zero: Series Plan

    Roadmap 30 bài học LLM từ foundation math đến production deployment cho senior dev muốn pivot AI: mental model, tokenization, attention, training, fine-tuning, inference, advanced topics. Hybrid approach: 70% hands-on code + 30% blog.

    Apr 22, 2026 · ~6 min read
    llmaimachine-learningserieslearning-path
  • Linear algebra cho LLM: vector, matrix, dot product

    Bài 1 nói mọi thứ bên trong LLM đều là vector và matrix. Vector là gì? Matrix là gì? Tại sao dot product là backbone của attention và RAG? Bài này phá băng math foundation cho dev: chỉ 4 khái niệm, không công thức phức tạp.

    Apr 22, 2026 · ~13 min read
    llmaimachine-learningmathlinear-algebra
  • Neural network tối giản: perceptron, MLP từ zero

    Ghép linear algebra + calculus + probability thành neural network đầu tiên. Từ perceptron 1957 đến MLP đa layer, code 60 dòng NumPy train XOR không cần PyTorch. Sau bài này, bạn hiểu building block gốc của mọi LLM hiện đại.

    Apr 22, 2026 · ~12 min read
    llmaimachine-learningneural-networkperceptron
  • Probability cho LLM: softmax, cross-entropy, perplexity

    LLM output là xác suất, không phải lựa chọn cứng. Softmax biến logits thành phân phối. Cross-entropy là loss function chuẩn. Perplexity là metric đánh giá model. Bài này giải thích tại sao mấy khái niệm này là trái tim của training và evaluation, với code NumPy minh hoạ.

    Apr 22, 2026 · ~11 min read
    llmaimachine-learningmathprobability
  • Build BPE tokenizer từ đầu (theo Karpathy minbpe)

    Bài 6 giới thiệu BPE. Bài này code từ zero, 150 dòng Python thuần không dependency. Train tokenizer trên Shakespeare, encode/decode, visualize merges. Sau bài này hiểu 100% BPE thay vì chỉ đọc paper thấy abstract.

    Apr 22, 2026 · ~12 min read
    llmaitokenizationbpepython
  • Attention mechanism: Query, Key, Value intuition

    Paper 'Attention is All You Need' (2017) là điểm bùng nổ của Transformer. Nhưng Q/K/V từ đâu ra, nghĩa gì, tại sao 3 cái thay vì 1? Bài này giải thích bằng analogy thư viện, không công thức - xây intuition trước khi đến code ở bài 10.

    Apr 22, 2026 · ~11 min read
    llmaiattentiontransformerqkv
  • Embeddings: word2vec, contextual, và positional encoding (RoPE)

    Token ID biến thành vector - đó là embedding. Nhưng vector đó từ đâu? word2vec (2013) dạy model hiểu semantic. Contextual embedding (BERT/GPT) khác word2vec thế nào? Tại sao cần thêm positional encoding, và RoPE làm điều đó cách nào?

    Apr 22, 2026 · ~11 min read
    llmaiembeddingsword2vecrope
  • Multi-head attention: tại sao chia nhiều head

    Bài 10 code single-head attention. GPT/Llama có 32-128 heads. Tại sao chia? Mỗi head làm gì khác nhau? Cost tính thêm bao nhiêu? Bài này: intuition + code multi-head bằng NumPy, visualize head specialization (syntax, coreference, long-range).

    Apr 22, 2026 · ~13 min read
    llmaiattentionmulti-headtransformer
  • nanoGPT: 300 dòng PyTorch tái tạo GPT từ đầu

    Capstone Part 3. Karpathy nanoGPT là implementation GPT-2 trọn vẹn trong ~300 dòng PyTorch. Bài này walk-through code, train GPT nhỏ trên Shakespeare trong 15 phút CPU, generate text. Sau bài này bạn code được GPT-2 nhỏ không cần HuggingFace.

    Apr 22, 2026 · ~12 min read
    llmaigptpytorchnanogpt
  • Self-attention: code từ đầu bằng NumPy

    Bài 9 đã xây intuition QKV. Bài này code từ zero một self-attention layer hoàn chỉnh bằng NumPy thuần - 80 dòng, xử lý batch, causal mask, scaling. Verify output matches PyTorch implementation. Sau bài này, attention không còn là hộp đen.

    Apr 22, 2026 · ~10 min read
    llmaiattentionself-attentionnumpy
  • Transformer block: attention + MLP + layer norm + residual

    Multi-head attention là một nửa Transformer. Nửa còn lại: MLP (feed-forward), layer normalization, residual connection. Bài này ghép 4 thành phần thành 1 block hoàn chỉnh, stack 12 block thành GPT-2, giải thích thứ tự (pre-norm vs post-norm) và tại sao residual quan trọng.

    Apr 22, 2026 · ~13 min read
    llmaitransformermlplayer-norm
  • Tokenization: BPE, WordPiece, SentencePiece

    Bài 1 nói input text biến thành tokens. Nhưng cách biến là gì? BPE, WordPiece, SentencePiece có gì khác nhau? Tại sao tokenizer quyết định nhiều hơn bạn nghĩ - từ cost API đến khả năng model xử lý tiếng Việt. Deep dive cho dev.

    Apr 22, 2026 · ~14 min read
    llmaimachine-learningtokenizationbpe
  • AI Coding Providers Series: Chọn đúng plan cho workload của bạn

    Series research và so sánh các AI coding plan (subscription + API pay-per-token) của Anthropic, Alibaba, GLM, Moonshot, OpenAI. Giúp lập trình viên chọn đúng provider cho ngân sách và workflow thực tế.

    Apr 21, 2026 · ~1 min read
    aillmcodingpricingcomparison
  • Mua AI Coding Plan nào? Research 5 providers lớn (2026-04)

    So sánh chi tiết subscription plan và API pay-per-token pricing của Anthropic, Alibaba, GLM, Moonshot, OpenAI tại thời điểm tháng 4/2026. Kèm decision framework và cảnh báo billing pitfall.

    Apr 21, 2026 · ~11 min read
    aillmcodingpricingcomparison
  • Tiếng Việt tốn hơn x2 token? Data nói khác

    Benchmark trên 5626 prompt thực tế từ 555 sessions Claude Code. Claim 'tiếng Việt tốn hơn x2 token' chỉ đúng 2.9% use case. Phần lớn thời gian mix-lang Việt-Anh còn tiết kiệm hơn pure English, và data cho thấy lý do.

    Apr 21, 2026 · ~14 min read
    llmprompt-engineeringtoken-optimizationbenchmark
  • Does Vietnamese really cost 2x+ tokens in LLM prompts? Data from 5626 real messages

    Benchmark across 5626 real prompts from 555 Claude Code sessions shows the '>2x token' claim for Vietnamese only applies to 2.9% of actual usage. Mixed Vietnamese-English prompts are more token-efficient than pure English on longer messages, and the data shows why.

    Apr 21, 2026 · ~13 min read
    llmprompt-engineeringtoken-optimizationbenchmark
  • Canvas: dựng report branded cho stakeholder

    Dùng Canvas của Kibana để dựng infographic pixel-precise có brand công ty: khác Dashboard thế nào, expression language pipeline, data source ESSQL, dynamic image/color theo value, và export PDF multi-page giao CEO/CFO. Dành cho developer backend và platform team.

    Apr 16, 2026 · ~8 min read
    kibanacanvasreportingessqlvisualization
  • Discover nâng cao: Runtime fields, filter phức tạp, highlighting

    Nâng Discover từ mức cơ bản lên power-user: tạo Runtime field không cần reindex, filter nested object và regex, bật highlighting để scan log nhanh, phân biệt Saved Query với Saved Search, inspect request để debug query và tối ưu performance.

    Apr 16, 2026 · ~8 min read
    kibanadiscoverruntime-fieldspainlesselasticsearch
  • KQL và ES|QL: So sánh hai ngôn ngữ query của Kibana

    Phân biệt KQL và ES|QL trong Kibana 8.x: triết lý khác nhau, cú pháp đối chiếu, pitfall phổ biến, và quy tắc tay chọn ngôn ngữ nào cho filter, aggregation, alert và dashboard. Dành cho developer backend và DevOps.

    Apr 16, 2026 · ~10 min read
    kibanaelasticsearchkqlesqlquery-language
  • Lens: từ drag-drop tới công thức phức tạp

    Dựng visualization trong Kibana 8.x bằng Lens: drag-drop chart cơ bản, Formula mode với function và time shift, annotation layer cho deploy marker, reference line cho SLO, pitfall về cardinality và time interval. Dành cho developer backend muốn tự làm dashboard production-grade.

    Apr 16, 2026 · ~8 min read
    kibanalensvisualizationdashboardformula
  • Kibana cho Developer: Filter log, Saved Search, Dashboard và REST API

    Hướng dẫn toàn diện sử dụng Kibana cho lập trình viên backend: filter error log bằng KQL, tránh pitfall với ES|QL, tạo Saved Search và Dashboard qua GUI, tương tác Kibana qua REST API và quản lý API key an toàn.

    Apr 15, 2026 · ~10 min read
    kibanaelasticsearchloggingelkobservability
  • Kibana từ A đến Z: Series Plan

    Roadmap series 28 bài học Kibana từ cơ bản đến production: cover Discover, KQL/ES|QL, Lens, Dashboard, Alerts, RBAC, ILM, automation và troubleshooting cho developer backend.

    Apr 15, 2026 · ~5 min read
    kibanaserieslearning-pathelkobservability
  • Backstage on Kubernetes: Practical Platform Engineering Guide

    Implement a practical Internal Developer Platform with Backstage on Kubernetes, software templates, service catalog, and golden paths for engineering teams.

    · ~2 min read
    backstagekubernetesplatform-engineeringidpdeveloper-experience
  • ArgoCD Advanced Patterns: App of Apps and Promotion Flows

    Implement advanced ArgoCD patterns for scalable GitOps: App of Apps, environment promotion, sync waves, and safe progressive delivery workflows.

    · ~2 min read
    argocdgitopskubernetesprogressive-deliverycicd
  • [24/24] E is for Etcd: Understanding the Brain of Kubernetes

    A deep dive into etcd, the distributed key-value store that powers Kubernetes. Learn about consistency, high availability, and backup strategies.

    · ~2 min read
    kubernetesa-to-z-seriesetcddatabasedistributed-systems
  • [23/24] B is for Best Practices: Building Secure and Reliable Apps

    The second post in our Kubernetes A-to-Z series covering essential best practices for security, reliability, and resource management.

    · ~3 min read
    kubernetesa-to-z-seriesbest-practicessecurityreliability
  • [19/24] A is for Authentication and RBAC: Securing Your Cluster

    The sixteenth post in our Kubernetes A-to-Z series covering authentication mechanisms, Role-Based Access Control, security contexts, and cluster security best practices.

    · ~6 min read
    kubernetesa-to-z-seriesauthenticationrbacsecurity
  • [4/24] D is for Deployments: Managing Application Lifecycle

    The fourth post in our Kubernetes A-to-Z series covering Deployments, rolling updates, rollbacks, and application lifecycle management strategies.

    · ~7 min read
    kubernetesa-to-z-seriesdeploymentsrolling-updatesrollbacks
  • [2/24] C is for Containers: Docker Fundamentals Before Kubernetes

    The second post in our Kubernetes A-to-Z series covering container fundamentals, Docker basics, and essential concepts needed before learning Kubernetes.

    · ~8 min read
    dockercontainersa-to-z-serieskubernetesfundamentals
  • [20/24] F is for Federation: Multi-Cluster Management

    The seventeenth post in our Kubernetes A-to-Z series covering multi-cluster architectures, federation patterns, service mesh, disaster recovery, and cross-cluster communication.

    · ~6 min read
    kubernetesa-to-z-seriesfederationmulti-clusterservice-mesh
  • [22/24] G is for GitOps: Modern Deployment Workflows

    A comprehensive guide to GitOps principles and practices, comparing ArgoCD and FluxCD with practical examples, deployment strategies, and production best practices.

    · ~10 min read
    gitopsargocdfluxcdkubernetesci-cd
  • Building Internal Developer Platforms on Kubernetes: A Comprehensive Guide

    Learn how to build an Internal Developer Platform (IDP) on Kubernetes with Backstage, self-service capabilities, golden paths, and platform engineering best practices.

    · ~12 min read
    platform-engineeringkubernetesbackstagedeveloper-experiencedevops
  • [11/24] I is for Ingress: Managing External Access

    The tenth post in our Kubernetes A-to-Z series covering Ingress controllers, routing rules, TLS termination, and advanced traffic management patterns.

    · ~6 min read
    kubernetesa-to-z-seriesingressnetworkingtls
  • [1/24] K is for Kubernetes: Understanding the Basics and Architecture

    The first post in our Kubernetes A-to-Z series covering Kubernetes fundamentals, architecture, components, and basic cluster setup.

    · ~7 min read
    kubernetesa-to-z-seriesarchitecturebasicstutorial
  • [7/24] J is for Jobs and CronJobs: Batch Processing in Kubernetes

    Learn how to run one-off tasks and scheduled batch jobs in Kubernetes using Jobs and CronJobs resources.

    · ~2 min read
    kubernetesa-to-z-seriesjobscronjobsbatch-processing
  • Kafka Partition Design for IoT: Throughput and Ordering

    Design Kafka topic and partition strategy for IoT workloads with practical guidance on throughput, ordering, consumer scaling, and operational limits.

    · ~3 min read
    kafkaiotstreamingpartitionsarchitecture
  • Kubernetes Backup and Disaster Recovery: Velero and etcd

    Design a practical backup and disaster recovery strategy for Kubernetes with etcd snapshots, Velero, restore drills, and RTO/RPO planning.

    · ~2 min read
    kubernetesdisaster-recoverybackupveleroetcd
  • [12/24] H is for Helm: Package Management for Kubernetes

    The eleventh post in our Kubernetes A-to-Z series covering Helm charts, repositories, templating, values, and application lifecycle management.

    · ~7 min read
    kubernetesa-to-z-serieshelmpackage-managementcharts
  • Kubernetes Multi-Tenancy: Namespace, RBAC, and Quota Design

    Design a practical multi-tenant Kubernetes model with namespace boundaries, RBAC, network isolation, quotas, and operational guardrails.

    · ~2 min read
    kubernetesmulti-tenancyrbacnamespaceresourcequota
  • Kubernetes Cost Optimization in Production

    A practical guide to reducing Kubernetes infrastructure spend with right-sizing, autoscaling, scheduling strategy, and workload-level optimization.

    · ~3 min read
    kubernetesfinopscost-optimizationautoscalingperformance
  • Kubernetes Security Hardening Checklist for Production

    A practical security hardening checklist for production Kubernetes clusters, covering identity, network, workloads, supply chain, and runtime controls.

    · ~3 min read
    kubernetessecurityhardeningrbacnetworkpolicy
  • Kubernetes A-to-Z Series: Complete Learning Path

    A comprehensive 24-part blog series covering Kubernetes from beginner to advanced level, with practical examples and real-world scenarios.

    · ~5 min read
    kubernetesserieslearning-pathdevopscontainers
  • Kubernetes vs Docker Swarm: Complete Comparison Guide with Command Cheatsheets

    A comprehensive comparison of Kubernetes and Docker Swarm container orchestration platforms, including detailed command cheatsheets, architecture differences, and practical examples.

    · ~8 min read
    kubernetesdocker-swarmcontainer-orchestrationdevopscomparison
  • [10/24] M is for ConfigMaps and Secrets: Managing Configuration

    The ninth post in our Kubernetes A-to-Z series covering ConfigMaps, Secrets, configuration management patterns, and environment-specific deployments.

    · ~7 min read
    kubernetesa-to-z-seriesconfigmapssecretsconfiguration
  • [15/24] L is for Logging and Monitoring: Observability in Kubernetes

    The thirteenth post in our Kubernetes A-to-Z series covering logging architectures, Prometheus metrics, distributed tracing, and observability best practices.

    · ~7 min read
    kubernetesa-to-z-seriesloggingmonitoringobservability
  • [13/24] O is for Operators: Extending Kubernetes Functionality

    The twelfth post in our Kubernetes A-to-Z series covering Operators, Custom Resource Definitions (CRDs), controller patterns, and extending Kubernetes.

    · ~6 min read
    kubernetesa-to-z-seriesoperatorscrdcustom-resources
  • [8/24] N is for Namespaces: Organizing Your Cluster

    The seventh post in our Kubernetes A-to-Z series covering Namespaces, multi-tenancy, resource quotas, and cluster organization strategies.

    · ~8 min read
    kubernetesa-to-z-seriesnamespacesmulti-tenancyresource-quotas
  • [3/24] P is for Pods: The Basic Building Blocks of Kubernetes

    The third post in our Kubernetes A-to-Z series covering pods, their lifecycle, networking, storage, and multi-container patterns.

    · ~10 min read
    kubernetesa-to-z-seriespodscontainersmulti-container
  • Kubernetes Observability Stack: Prometheus, OpenTelemetry, and Loki

    Build a practical Kubernetes observability stack using metrics, logs, and traces with Prometheus, OpenTelemetry, Loki, and actionable SLO-driven alerting.

    · ~2 min read
    kubernetesobservabilityprometheusopentelemetryloki
  • PostgreSQL Index Size Deep Dive: Why Indexes Grow Fast

    Understand why PostgreSQL indexes can grow quickly in production and how to control index bloat with better schema design, maintenance, and query patterns.

    · ~2 min read
    postgresqldatabaseindexperformancestorage
  • [17/24] Q is for Quality Assurance: Testing in Kubernetes

    The fifteenth post in our Kubernetes A-to-Z series covering testing strategies, chaos engineering, CI/CD integration, and quality assurance best practices.

    · ~6 min read
    kubernetesa-to-z-seriestestingquality-assurancechaos-engineering
  • [6/24] R is for ReplicaSets: Ensuring High Availability

    The sixth post in our Kubernetes A-to-Z series covering ReplicaSets, scaling strategies, pod disruption budgets, and high availability patterns.

    · ~7 min read
    kubernetesa-to-z-seriesreplicasetshigh-availabilityscaling
  • Stateful Workloads on Kubernetes: PostgreSQL and Kafka Operators

    Run stateful workloads safely on Kubernetes with operator-based patterns for PostgreSQL and Kafka, including storage, scaling, backup, and failure recovery.

    · ~2 min read
    kubernetesstatefulpostgresqlkafkaoperators
  • Service Mesh Deep Dive: Istio vs Linkerd vs Consul Connect

    A comprehensive comparison of service mesh platforms including architecture, features, performance benchmarks, and practical implementation guides for Istio, Linkerd, and Consul Connect.

    · ~11 min read
    service-meshistiolinkerdconsulkubernetes
  • [5/24] S is for Services: Networking and Service Discovery

    The fifth post in our Kubernetes A-to-Z series covering Services, networking patterns, service discovery, and load balancing in Kubernetes.

    · ~7 min read
    kubernetesa-to-z-seriesservicesnetworkingservice-discovery
  • [16/24] T is for Troubleshooting: Common Issues and Solutions

    The fourteenth post in our Kubernetes A-to-Z series covering debugging techniques, common issues, diagnostic commands, and systematic troubleshooting approaches.

    · ~8 min read
    kubernetesa-to-z-seriestroubleshootingdebuggingdiagnostics
  • [18/24] U is for Upgrades: Managing Cluster Lifecycle

    Master the art of Kubernetes upgrades. Learn about version skew policies, node draining, and strategies for zero-downtime cluster maintenance.

    · ~2 min read
    kubernetesa-to-z-seriesupgradesmaintenancelifecycle
  • [9/24] V is for Volumes: Persistent Storage in Kubernetes

    The eighth post in our Kubernetes A-to-Z series covering Volumes, PersistentVolumes, PersistentVolumeClaims, storage classes, and stateful application patterns.

    · ~8 min read
    kubernetesa-to-z-seriesvolumespersistent-storagepv
  • [14/24] Y is for YAML: Mastering the Language of Kubernetes

    Love it or hate it, YAML is the language of Kubernetes. Learn syntax tips, common pitfalls, and tools to validate your manifests.

    · ~2 min read
    kubernetesa-to-z-seriesyamlconfigurationtools
  • [21/24] Z is for Zero-Downtime Deployments: Advanced Deployment Strategies

    The final post in our Kubernetes A-to-Z series covering advanced deployment strategies, GitOps, progressive delivery, canary deployments, and production-ready patterns.

    · ~6 min read
    kubernetesa-to-z-serieszero-downtimedeployment-strategiesgitops
  • [25/26] W is for Workloads: Managing Application Types in Kubernetes

    The twenty-fifth post in our Kubernetes A-to-Z series covering workload types: Pods, ReplicaSets, Deployments, StatefulSets, DaemonSets, Jobs, and CronJobs, with decision guidance and YAML examples.

    · ~12 min read
    kubernetesa-to-z-seriesworkloadsdeploymentstatefulset
  • [26/26] X is for eXtensibility: CRDs, Webhooks, and the API Aggregation Layer

    How Kubernetes extends itself. Custom Resource Definitions, admission webhooks, the API aggregation layer, and kubectl plugins, with real-world examples from cert-manager, Istio, and Argo CD.

    · ~14 min read
    kubernetesa-to-z-seriesextensibilitycrdoperator
$ echo "built with Astro"
© 2026 Nghia Pham | RSS | GitHub | nghia-pham.com