← Back to Skills Marketplace
antoniovfranco

Algernon Texto

by Antonio V. Franco · GitHub ↗ · v1.0.0 · MIT-0
cross-platform ⚠ suspicious
217
Downloads
0
Stars
0
Active Installs
1
Versions
Install in OpenClaw
/install algernon-texto
Description
Block-by-block reading mode for OpenAlgernon materials. Use when the user runs `/algernon texto SLUG`, `/algernon paper SLUG`, says "quero ler [material]", "...
README (SKILL.md)

algernon-texto

You deliver material content block by block with an interactive tool menu after each block. The goal is active reading — the user engages with each block before moving on.

Constants

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

Step 1 — Load Material

sqlite3 "$DB" "SELECT id, name, local_path FROM materials WHERE slug = 'SLUG';"

If no result, stop: "Material 'SLUG' not found. Run list to see installed materials."

Read LOCAL_PATH/algernon.yaml to get:

  • content: list of content files
  • sections: section titles mapped to file names

Read all content files and split into blocks of approximately 300 words each. Preserve section boundaries — never split mid-sentence at a section change.

Step 2 — Display Session Header

================================================
 SLUG — mode: texto (or: paper)
 N blocks total
================================================

Step 3 — Block Delivery Loop

For each block, display:

────────────────────────────────────────────────
 Block N/TOTAL · SECTION_TITLE
────────────────────────────────────────────────

[Block content]

────────────────────────────────────────────────
 /continue    /explain [term]    /example
 /analogy     /summarize         /test
 /map         /deep-dive
────────────────────────────────────────────────

Present as an AskUserQuestion with the tool options above.

Tool Behaviors

Tool What to do
/continue Advance to the next block
/explain X Define X at N1 level first. Ask if user wants N2 before going deeper.
/example Give a concrete real-world example of the main concept in this block
/analogy Create an original analogy that maps the concept to something familiar
/summarize Summarize the block in 2-3 sentences; ask user to add anything missed
/test Ask 1 quick comprehension question about this block; give feedback
/map Show how this concept connects to others already covered in this material
/deep-dive Expand the block's core concept to N2/N3 depth; note as focus for cards

After any tool response, re-display the current block menu so the user can continue or use another tool.

Paper Mode Additions

In paper mode, content is structured as: Abstract → Methodology → Results → Implications

Between sections, before showing the first block of the new section:

"Summarize what you understood from [previous section] before we continue." (Free text — acknowledge and move on without grading.)

Track which terms the user used /explain or /deep-dive on. Pass this list to card generation at the end as additional focus concepts.

Step 4 — Session End

When the last block is delivered and the user selects /continue:

Material complete: MATERIAL_NAME
Sections covered: N
Key concepts explored: [list of terms where user used /explain or /deep-dive]

Generate Cards

Generate cards for this material. Follow the card generation rules in algernon-content:

  • Distribution: 50% flashcard, 30% dissertative, 20% argumentative
  • All cards start at N1
  • Prioritize concepts from the /explain and /deep-dive list

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"

Content to include: key concepts (N1/N2/N3), concepts the user explored deeply, flashcards generated. This step is skipped silently if Notion is not configured.

Save Memory

Append a summary to today's conversation log:

echo "[HH:MM] texto session -- MATERIAL_NAME | Blocks: N/TOTAL | Cards: N" \
  >> "${ALGERNON_HOME}/memory/conversations/YYYY-MM-DD.md"
Usage Guidance
This skill appears to implement a guided reading flow and will read your local OpenAlgernon database (~/.openalgernon/data/study.db) and material files, split content into blocks, and append a session summary to a local memory file under ~/.openalgernon. It will also optionally call a Notion CLI to post generated content if you set NOTION_PAGE_ID. Before installing/use: (1) Confirm you trust and understand the files under ALGERNON_HOME (or set ALGERNON_HOME to a safe directory). (2) Ensure sqlite3 and any notion-cli you expect are installed; the skill assumes them but doesn't declare them. (3) Do not set NOTION_PAGE_ID unless you want the skill to upload session content to that Notion page. (4) If you have sensitive data in the sqlite DB or materials, review/backup it first. The main issues are missing declarations (binaries/env) and the skill's ability to read local files and optionally transmit content externally — those are expected for this feature but should be made explicit and consented to.
Capability Analysis
Type: OpenClaw Skill Name: algernon-texto Version: 1.0.0 The algernon-texto skill implements an interactive reading assistant that utilizes shell commands to interact with a local SQLite database and the file system (~/.openalgernon). While these actions in SKILL.md are aligned with the stated purpose, the use of shell execution for database queries (sqlite3) and file logging, along with potential integration with an external Notion CLI, represents a high-risk capability set. The reliance on potentially unsanitized user input (the SLUG parameter) for shell and database operations introduces a vulnerability surface, though no clear evidence of intentional malicious behavior was identified.
Capability Assessment
Purpose & Capability
The stated purpose (block-by-block reading for OpenAlgernon materials) aligns with actions in SKILL.md (querying a local materials DB, reading content files, splitting into blocks, generating cards). However, the skill's runtime instructions call external tools (sqlite3, notion-cli) and rely on ALGERNON_HOME and NOTION_PAGE_ID, none of which are declared in the registry metadata. The missing declarations are an incoherence: either the skill should declare required binaries/env or avoid depending on them.
Instruction Scope
Instructions direct the agent to run a sqlite3 query against ${ALGERNON_HOME}/data/study.db, read local material files, split content into blocks, and append a session summary to ${ALGERNON_HOME}/memory/conversations/YYYY-MM-DD.md. They also instruct an optional external write via a Notion CLI. These file reads/writes and the DB access are within the feature's purpose, but they access local data and perform disk writes and potential external transmission (Notion) while the skill metadata declared no required env or binaries — that's scope and transparency mismatch.
Install Mechanism
This is an instruction-only skill (no install spec or code), which is lower-risk for arbitrary code installs. However, the runtime snippets assume availability of sqlite3 and a Notion CLI (default 'notion-cli') on PATH; the skill does not declare these as required binaries. That omission is an operational mismatch rather than an installer risk, but it affects what the agent will try to execute.
Credentials
Registry metadata lists no required environment variables, but SKILL.md uses ALGERNON_HOME (with a HOME default), NOTION_CLI (default 'notion-cli'), and conditionally checks NOTION_PAGE_ID. The Notion page ID is a credential-like value that controls external posting; its presence would allow the skill to append content to an external page. The skill also reads the user's local sqlite DB and material files — access to local data is proportional to the stated purpose but should have been declared clearly.
Persistence & Privilege
The skill does not request always:true, does not modify other skills, and its persistence actions are limited to writing a session summary into an ALGERNON_HOME memory file and optionally appending to a Notion page. Those behaviors are reasonable for a reading/session skill, but they should be documented and consented to by the user.
How to Use
  1. Make sure OpenClaw is installed (local or Docker)
  2. Run the install command in chat: /install algernon-texto
  3. After installation, invoke the skill by name or use /algernon-texto
  4. Provide required inputs per the skill's parameter spec and get structured output
Version History
v1.0.0
- Initial release of algernon-texto: interactive block-by-block reading mode for OpenAlgernon materials. - Supports guided reading with a tool menu after each block: continue, explain term, example, analogy, summarize, test, map, and deep-dive. - "Paper mode" adds structured reflection between major sections of academic content. - Tracks which concepts the user explores more deeply for custom card generation at session end. - Generates study cards for material, prioritizing user-focused terms. - Optionally saves session results and generated cards to Notion, and logs a summary to daily conversation memory.
Metadata
Slug algernon-texto
Version 1.0.0
License MIT-0
All-time Installs 0
Active Installs 0
Total Versions 1
Frequently Asked Questions

What is Algernon Texto?

Block-by-block reading mode for OpenAlgernon materials. Use when the user runs `/algernon texto SLUG`, `/algernon paper SLUG`, says "quero ler [material]", "... It is an AI Agent Skill for Claude Code / OpenClaw, with 217 downloads so far.

How do I install Algernon Texto?

Run "/install algernon-texto" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.

Is Algernon Texto free?

Yes, Algernon Texto is completely free, licensed under MIT-0. You can download, install and use it at no cost.

Which platforms does Algernon Texto support?

Algernon Texto is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).

Who created Algernon Texto?

It is built and maintained by Antonio V. Franco (@antoniovfranco); the current version is v1.0.0.

💬 Comments