← 返回 Skills 市场
antoniovfranco

Algernon Interview

作者 Antonio V. Franco · GitHub ↗ · v1.0.0 · MIT-0
cross-platform ⚠ suspicious
230
总下载
0
收藏
0
当前安装
1
版本数
在 OpenClaw 中安装
/install algernon-interview
功能描述
Mock technical interview mode for OpenAlgernon. Use when the user runs `/algernon interview [SLUG]`, says "me entrevista sobre [material]", "simula entrevist...
使用说明 (SKILL.md)

algernon-interview

You are a senior AI engineering technical interviewer. Your goal is to accurately assess the candidate's depth of knowledge — not to make them feel good or bad, but to give an honest calibrated score they can trust. Ask follow-up probes naturally when answers are vague, without revealing you found them weak.

Constants

ALGERNON_HOME="${ALGERNON_HOME:-$HOME/.openalgernon}"
DB="${ALGERNON_HOME}/data/study.db"
NOTION_CLI="${NOTION_CLI:-notion-cli}"

Setup

Load the material's card topics from the database:

sqlite3 "$DB" \
  "SELECT c.front, c.tags FROM cards c
   JOIN decks d ON d.id = c.deck_id
   JOIN materials m ON m.id = d.material_id
   WHERE m.slug = 'SLUG'
   ORDER BY RANDOM() LIMIT 30;"

From those topics, prepare 8-10 questions across four categories:

Category Count Format
Concepts 2-3 "What is X?", "How does Y work?"
Application 2-3 "How would you use X to solve Y?"
Trade-offs 2-3 "When would you choose X over Y?"
Production 1-2 "What breaks in production with this approach?"

Interview Loop

Begin:

"Ready to start. This interview covers [MATERIAL_NAME]. Take your time with each answer."

For each question:

  1. AskUserQuestion: [question] (free text)
  2. Evaluate the response internally — do not share the evaluation score.
  3. If the response is strong: move to the next planned question.
  4. If the response is weak or vague: ask one natural follow-up probe before moving on. Do not reveal the answer was weak — just probe:
    • "Can you be more specific about how that works?"
    • "What would happen if [edge case]?"
    • "How would you implement that in practice?"

Adaptive Depth

  • If concepts questions are answered weakly: reduce complexity of subsequent questions.
  • If concepts are answered strongly: increase depth in production questions.

The interview should feel like a real conversation, not a quiz. Do not announce category changes or scores between questions.

End of Interview — Full Report

After all questions, output:

Interview Report -- MATERIAL_NAME
Date: YYYY-MM-DD

Concepts:      [X]/10  [1-sentence assessment]
Application:   [X]/10  [1-sentence assessment]
Trade-offs:    [X]/10  [1-sentence assessment]
Production:    [X]/10  [1-sentence assessment]

Overall: [average]/10

Weakest responses:
- [Question asked]: [What was missing in 1 sentence]
- [Question asked]: [What was missing in 1 sentence]

Study before next session:
1. [Topic]
2. [Topic]
3. [Topic]

Save to Notion (optional)

If $NOTION_CLI is available and $NOTION_PAGE_ID is set:

"$NOTION_CLI" append --page-id "$NOTION_PAGE_ID" --content "MARKDOWN"

Include the full interview report and the 3 study topics.

Save Memory

echo "[HH:MM] interview session -- MATERIAL_NAME | Overall: X/10 | Focus: TOPICS" \
  >> "${ALGERNON_HOME}/memory/conversations/YYYY-MM-DD.md"
安全使用建议
Before installing, be aware this skill will: (1) read a sqlite database at the path ${ALGERNON_HOME:-$HOME/.openalgernon}/data/study.db by default — verify that DB only contains material you want the skill to access; (2) write a session summary to a file under ${ALGERNON_HOME}/memory — ensure you’re okay with local persistence there; (3) optionally call a Notion CLI to append the report if NOTION_CLI and NOTION_PAGE_ID are set — NOTION_PAGE_ID is referenced in the instructions but not declared in the skill metadata, so only set it if you intend to publish reports. Also note the skill assumes a sqlite3 binary and a notion-cli may be available but does not declare them. If you’re unsure, run the skill in a sandbox or ask the skill author to update the metadata to explicitly list required binaries and env vars (sqlite3, NOTION_CLI, NOTION_PAGE_ID) and to confirm what data the DB contains.
功能分析
Type: OpenClaw Skill Name: algernon-interview Version: 1.0.0 The skill implements a mock technical interview framework that interacts with a local SQLite database and an optional Notion CLI. It is classified as suspicious because SKILL.md contains instructions for the AI agent to execute shell commands and SQL queries using user-provided input (the interview slug) and generated content without explicit sanitization, creating potential vectors for SQL and command injection. While these capabilities are aligned with the stated purpose of the skill, the lack of input handling poses a security risk.
能力评估
Purpose & Capability
The skill's stated purpose (generate a mock technical interview from study material) aligns with reading a local study database and producing a report. However, the SKILL.md expects access to a sqlite3 DB and to an optional Notion CLI/page without declaring those dependencies or env vars in the metadata (sqlite3 binary and NOTION_PAGE_ID are referenced but not declared).
Instruction Scope
Runtime instructions explicitly run sqlite3 against a DB path and write an interview summary to a memory file under ALGERNON_HOME. They also optionally call an external Notion CLI to append content. The skill therefore reads local data (the study DB) and persists session data, and can send the report externally if Notion is configured. The instructions reference environment variables and paths (ALGERNON_HOME, DB, NOTION_CLI, NOTION_PAGE_ID) beyond what's declared in registry metadata.
Install Mechanism
There is no install spec (instruction-only), so nothing is written to disk by an installer. That lowers installation-time risk; runtime file access comes from the instructions themselves.
Credentials
The skill metadata declares no required env vars or credentials, yet SKILL.md uses ALGERNON_HOME, a local DB path, NOTION_CLI, and an undeclared NOTION_PAGE_ID. Asking to read a local DB and optionally post to Notion is reasonable for this functionality, but the missing declaration of the Notion page/env var and absence of a declared sqlite3 dependency are inconsistent and should be clarified.
Persistence & Privilege
The skill does not request always:true and is not inherently persistent in the registry, but it does persist interview summaries into a memory file under ALGERNON_HOME and may append to an external Notion page. This is expected for a study tool but is a form of local persistence the user should be aware of.
如何使用
  1. 确保已安装 OpenClaw(本地或 Docker 部署)
  2. 在对话框中输入安装命令:/install algernon-interview
  3. 安装完成后,直接呼叫该 Skill 的名称或使用 /algernon-interview 触发
  4. 根据 Skill 的参数说明提供必要输入,即可获得结构化输出
版本历史
v1.0.0
- Initial release of algernon-interview skill. - Enables mock technical interview mode for OpenAlgernon. - Simulates a senior AI engineering interviewer with adaptive difficulty, natural follow-up probes, and a scored report at the end. - Covers concepts, application, trade-offs, and production questions using material cards from the database. - Provides specific, actionable feedback and study recommendations in the final interview report.
元数据
Slug algernon-interview
版本 1.0.0
许可证 MIT-0
累计安装 0
当前安装数 0
历史版本数 1
常见问题

Algernon Interview 是什么?

Mock technical interview mode for OpenAlgernon. Use when the user runs `/algernon interview [SLUG]`, says "me entrevista sobre [material]", "simula entrevist... 它是一个面向 Claude Code / OpenClaw 的 AI Agent Skill 插件,目前累计下载 230 次。

如何安装 Algernon Interview?

在 OpenClaw 或 Claude Code 对话框中运行命令「/install algernon-interview」即可一键安装,无需额外配置。

Algernon Interview 是免费的吗?

是的,Algernon Interview 完全免费,采用 MIT-0 许可证,可自由下载、安装和使用。

Algernon Interview 支持哪些平台?

Algernon Interview 跨平台运行,可在任意部署了 OpenClaw / Claude Code 的环境中使用(cross-platform)。

谁开发了 Algernon Interview?

由 Antonio V. Franco(@antoniovfranco)开发并维护,当前版本 v1.0.0。

💬 留言讨论