documentation-and-adrs
Records decisions and documentation, adapted for the Mezon Mentor Bot ("MeKnow") platform.
Skill by minhlucvan
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/minhlucvan-documentation-and-adrs
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: documents, design, backend, productivity
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/documentation-and-adrs
What's inside
- Skill name
documentation-and-adrs- Description
- Records decisions and documentation, adapted for the Mezon Mentor Bot ("MeKnow") platform. Use when making architectural decisions, changing the API contract (OpenAPI) or the BotPolicy/MCP boundary, shipping features, or recording context future engineers and agents need. Notes how OpenSpec design.md files serve as lightweight ADRs, that former RFCs live in docs/design/, and where docs/ lives.
- License
- Apache-2.0
- Instructions
- 300 lines in SKILL.md · view on GitHub
Files (1)
- SKILL.md
SKILL.md (first lines)
# Documentation and ADRs ## Overview Document decisions, not just code. The most valuable documentation captures the *why* — the context, constraints, and trade-offs that led to a decision. Code shows *what* was built; documentation explains *why it was built this way* and *what alternatives were considered*. This context is essential for future humans and agents working in the codebase. ## When to Use - Making a significant architectural decision - Choosing between competing approaches - Adding or changing a public API surface (the OpenAPI contract, an MCP `kb.*` tool, a `BotPolicy` field) - Shipping a feature that changes a capability's behavior contract - Onboarding new team members (or agents) to the project - When you find yourself explaining the same thing repeatedly **When NOT to use:** Don't document obvious code. Don't add comments that restate what the code already says. Don't write docs for throwaway prototypes. ## Architecture Decision Records (ADRs) ADRs capture the reasoning behind significant technical decisions. They're the highest-value documentation you can write. **In this repo, OpenSpec change `design.md` files already serve as lightweight, per-change ADRs** — they record the problem, the chosen approach, and rejected alternatives for that change. This is where new decisions go. This repo has **just replaced its RFC system with OpenSpec**. The former RFCs (`docs/design/`) are being preserved as design rationale under `docs/design/NNNN-<slug>.md`, linked from each capability's `## Purpose`, and **`openspec/specs/<capability>/spec.md` is now the canonical source of truth** for current behavior. So: - A decision scoped to **one change** → that change's `design.md`. - A **durable, cross-cutting** decision future changes must respect → a doc under `docs/design/` (the former-RFC home), referenced from the relevant capability spec. ### When to Write a (durable) design doc / ADR under docs/design/ - A decision that constrains *future* OpenSpec changes (not just this one) - Choosing a major dependency or boundary (`anthropic-sdk-python` directly — no LangChain/LangGraph; MCP as the internal tool boundary; `sentence-transformers` for local embeddings; MiniMax via the Anthropic-compatible endpoint) - The multi-tenant data model and `tenant_id`-on-everything invariant - The credential-encryption strategy (Fernet, `ingest_core.crypto`, decrypt server-side only) - The retrieval-runtime / lobe-engine model (append-only versions, the compression invariant, `temperature == 0` on synthesize/cite/filter) - The citations-mandatory / refuse contract - Any decision that would be expensive to reverse If a decision lives entirely within one change, capture it in that change's `design.md` instead of a separate doc. ### Design-doc / ADR Template Store durable design docs in `docs/design/` with sequential numbering (the former-RFC convention): ```markdown # 0007: Multi-tenant isolation keyed by tenant_id on every query and cache key ## Status Accepted | Superseded by 00XX | Deprecated ## Date 2026-06-22 ## Context MeKnow is a multi-tenant RAG platform: many orgs share one deployment, and an org must never see another org's documents, answers, or cache. Bolting tenancy on per-feature would leak across joins and shared caches. ## Decision Every table, query, cache key, and log line carries tenant_id. Cross-tenant joins are bugs. Cache keys additionally include an ACL-cohort hash so two callers with different KB permissions never share a cached answer. ACL is enforced server-side inside retrieve_kb; the caller identity is inherited from the request, never trusted from the model. ## Alternatives Considered ### Row-level security only, no tenant_id in cache keys - Pros: DB enforces isolation at the row layer - Cons: shared caches still leak across tenants/ACL cohorts - Rejected: the cache is a real cross-tenant leak path; keys must be scoped ### Per-tenant database / schema - Pros: hard isolation - Cons: operationally heavy; breaks shared embeddings + golden-set tooling - Rejected: tenant_id scoping gives the guarantee without the operational cost ## Consequences - Cross-tenant isolation is gate-tested (benchmarks/gates/tenant-isolation-test.sh) - Spec lives in openspec/specs/auth-and-tenancy/spec.md ``` ### ADR / design-doc Lifecycle ``` PROPOSED → ACCEPTED → (SUPERSEDED or DEPRECATED) ``` - **Don't delete old design docs / RFCs.** They capture historical context — that's exactly why the former `docs/design/` are being preserved under `docs/design/`. - When a decision changes, write a new doc that references and supersedes the old one. - Cross-reference: link the doc from the relevant `openspec/specs/<capability>/spec.md` (`## Purpose`) and from the change `design.md` that introduced or revisited the decision. ## OpenSpec specs vs. design docs (this repo) | Artifact | Captures | Lives in | |---|---|---| | `openspec/specs/<capability>/spec.md` | The *current* behavior contract (the source of truth) | `openspec/specs/` | | change `design.md` | The reasoning for *this* change (a lightweight ADR) | `openspec/changes/<name>/design.md` | | durable design doc (former RFC) | A cross-cutting decision future changes must respect | `docs/design/NNNN-<slug>.md` | When behavior changes, update the spec via a change's delta + `/opsx:sync` — don't let the spec drift from the code. ## Inline Documentation
From minhlucvan/emdesign, Apache-2.0.
More from minhlucvan/emdesign
- 0.476score
emdesign
minhlucvan
Master skill for emdesign — the design-engineering engine.
SkillCFreshness: CClaude Code +9 - 0.474score
git-workflow-and-versioning
minhlucvan
Structures git workflow practices, adapted for the Mezon Mentor Bot ("MeKnow") platform — the platform/ git submodule of funix-mezon-bot.
SkillCFreshness: CClaude Code +9 - 0.474score
ci-cd-and-automation
minhlucvan
Automates CI/CD pipeline setup, adapted for the Mezon Mentor Bot ("MeKnow") platform.
SkillCFreshness: CClaude Code +9 - 0.474score
planning-and-task-breakdown
minhlucvan
Breaks work into ordered tasks (MeKnow-adapted onto OpenSpec).
SkillCFreshness: CClaude Code +9 - 0.474score
security-and-hardening
minhlucvan
Hardens code against vulnerabilities (MeKnow-adapted, polyglot).
SkillCFreshness: CClaude Code +9 - 0.474score
spec-driven-development
minhlucvan
Creates specs before coding (MeKnow-adapted onto OpenSpec).
SkillCFreshness: CClaude Code +9 - 0.474score
ui-design
minhlucvan
Guides the AI through UI/visual design for user-facing OpenSpec changes.
SkillCFreshness: CClaude Code +9 - 0.474score
using-agent-skills
minhlucvan
Discovers and invokes agent skills (MeKnow-adapted).
SkillCFreshness: CClaude Code +9 - 0.474score
incremental-implementation
minhlucvan
Delivers changes incrementally (MeKnow-adapted, polyglot + OpenSpec).
SkillCFreshness: CClaude Code +9 - 0.474score
code-review-and-quality
minhlucvan
Conducts multi-axis code review (MeKnow-adapted, polyglot).
SkillCFreshness: CClaude Code +9 - 0.474score
code-simplification
minhlucvan
Simplifies code for clarity (MeKnow-adapted, polyglot + OpenSpec).
SkillCFreshness: CClaude Code +9 - 0.474score
debugging-and-error-recovery
minhlucvan
Guides systematic root-cause debugging (Mezon Mentor Bot "MeKnow" platform).
SkillCFreshness: CClaude Code +9
Signals
- Stars
- 0
- Forks
- 0
- Open issues
- 0
- Last commit (this folder)
- Jun 26, 2026 (4 months ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- Apache-2.0
- Repository
- github.com/minhlucvan/emdesign
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from minhlucvan
- 0.476score
emdesign
minhlucvan
Master skill for emdesign — the design-engineering engine.
SkillCFreshness: CClaude Code +9 - 0.474score
git-workflow-and-versioning
minhlucvan
Structures git workflow practices, adapted for the Mezon Mentor Bot ("MeKnow") platform — the platform/ git submodule of funix-mezon-bot.
SkillCFreshness: CClaude Code +9 - 0.474score
ci-cd-and-automation
minhlucvan
Automates CI/CD pipeline setup, adapted for the Mezon Mentor Bot ("MeKnow") platform.
SkillCFreshness: CClaude Code +9 - 0.474score
incremental-implementation
minhlucvan
Delivers changes incrementally (MeKnow-adapted, polyglot + OpenSpec).
SkillCFreshness: CClaude Code +9 - 0.474score
code-review-and-quality
minhlucvan
Conducts multi-axis code review (MeKnow-adapted, polyglot).
SkillCFreshness: CClaude Code +9 - 0.474score
code-simplification
minhlucvan
Simplifies code for clarity (MeKnow-adapted, polyglot + OpenSpec).
SkillCFreshness: CClaude Code +9
Cite this page
documentation-and-adrs skill. Agent Mart. https://agentmart.dev/skills/minhlucvan-documentation-and-adrs (last updated 2026-10-24)