CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

customer-db

Maintain a persistent SQLite customer database within the sales-cs workspace. The system hook injects peer (DB primary key) and the Sender block provides user_id_external (Awada routing ID). Use peer for all DB operations.

Quality

74%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide
SecuritybySnyk

Low

Low-risk findings worth noting

Fix and improve this skill with Tessl

tessl review fix ./crews/sales-cs/skills/customer-db/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

82%Weight 40%Scale 1-5

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

The body is a strong operational skill document: concrete executable commands for every operation, correctly ordered workflows with safety rules (no empty-value overwrites, cancel-before-create), and accurate script references that all resolve to real bundle files. The main gaps are minor — no post-write validation for database operations, a version-dated note, and deployment-prefixed script paths.

DimensionReasoningScore

Conciseness

The body is dense and operational, focusing on system-specific facts Claude cannot know (identifier generation rules, the injected Sender block format, script semantics) rather than general concepts. Minor over-explanation exists — the peer derivation rules ("trim → 移除 ASCII 控制字符", NFKC caveats) run long, and the version-dated note "OpenClaw 2026.10.4 不读取 HEARTBEAT.md" is time-sensitive information not placed in a deprecated/old-patterns section. It is not a 5 because of these trimming opportunities, and not a 3 because nothing explained is generic knowledge.

4 / 5

Actionability

Every operation has a complete, copy-paste-ready bash command with explicit placeholders tied to injected values (e.g. cs-update.sh with --peer/--purpose/--prompt-source, follow-up-create.sh with all five arguments), and the guidance covers semantics ("参数均为可选…脚本会自动忽略空值,不覆盖已有记录"), output format (tab-separated fields), and edge cases ("没有到期任务时输出 NO_DUE_TASKS 并正常退出"). This matches anchor 5: fully executable commands covering the common cases.

5 / 5

Workflow Clarity

Sequences are explicit and ordered — "先调用 cs-update.sh 更新…再在下一个 turn 输出对客户的回复" and the two-step "第一步:取消…第二步:创建新任务" — with a documented status flow (pending → sent_once → completed) and error-handling rules ("脚本报错时按失败处理,不能当作无任务"). It is not a 5 because the database workflows lack a post-write verification step (e.g. confirming the record was updated or the task created), which the rubric flags as important for database operations.

4 / 5

Progressive Disclosure

All seven scripts referenced in the body (cs-update.sh, follow-up-create/cancel-pending/expire/due/mark-sent/complete.sh) exist in the bundle's scripts/ directory, and the one external pointer (proactive-send SKILL.md「定时扫描到期跟进」) is clearly signaled and one level deep. Sections are well-organized with a sensible overview-to-detail progression. It is not a 5 because the script paths use the deployment prefix ./skills/customer-db/scripts/ rather than bundle-relative paths, and the field-dictionary section (二、字段含义) is reference material inlined in the main file.

4 / 5

Total

17

/

20

Passed

Description

53%Weight 40%Scale 1-5

Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.

The description communicates a specific system niche clearly but reads as internal plumbing documentation: it explains how identifiers are injected rather than what the skill does or when to use it. It omits the follow-up task functionality entirely and has no trigger guidance, both of which limit discoverability.

Suggestions

Add an explicit trigger clause, e.g. "Use when a customer message arrives in the sales-cs workspace, when updating customer status or profile fields, or when creating, querying, or completing follow-up tasks."

Enumerate the actual capabilities instead of only "maintain a database": update purpose/prompt_source, create/cancel/complete follow-up tasks, and query due follow-ups.

Replace some system jargon (peer, Awada routing ID) with natural terms users would say — customer records, follow-up reminders, customer status — so the skill triggers on real requests.

DimensionReasoningScore

Specificity

"Maintain a persistent SQLite customer database" names the domain and one concrete action, but the rest of the description explains identifier sourcing ("The system hook injects peer (DB primary key)") rather than listing capabilities like updating records, creating follow-ups, or querying due tasks. It matches anchor 3 (domain plus 1-2 concrete actions, not comprehensive) rather than anchor 4, which requires several specific actions.

3 / 5

Completeness

The "what" is clear (maintain a persistent SQLite customer database in the sales-cs workspace), but there is no "Use when..." clause or equivalent trigger guidance anywhere, which per the rubric caps completeness at 3. It is not a 4 because the "when" is entirely absent rather than merely imprecise.

3 / 5

Trigger Term Quality

Relevant keywords exist ("SQLite", "customer database") but are mixed with system-specific jargon ("peer", "user_id_external", "Awada routing ID") that no user would naturally say, and common variations like follow-up, customer status, or 客户跟进 are absent. This is anchor 3 (some relevant keywords, missing common variations) rather than 4.

3 / 5

Distinctiveness Conflict Risk

The description is scoped to the "sales-cs workspace" and uses system-specific identifiers (peer, user_id_external, Awada), giving it a clear niche with minimal overlap risk against unrelated skills. It is not a 5 because it lacks distinct trigger phrases, leaving minor overlap risk with other customer/sales-related skills.

4 / 5

Total

13

/

20

Passed

Validation

100%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation — 16 / 16 Passed

Validation for skill structure

No warnings or errors.

Repository

TeamWiseFlow/xiaobei

Path

crews/sales-cs/skills/customer-db/SKILL.md

Reviewed

Table of Contents

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.