SuperAPI AI Directory

soia-pkm-distill-article-opinion

Writing & research

View repository

Updated 10-16 08:44

About this skill

soia-pkm-distill-article-opinion

Turn "saved items" into "viewpoints." This is the PKM loop 收→整理→点→写→发 from input to output, thelifeline link (point)—specifically curing "saving a ton, with nothing settling in your head, and the我的看法paragraph always left empty."

Client-readable description

What this skill can do

Refine articles saved in your Obsidian vault into your own viewpoints. Read the original text → ask one Socratic question at a time → you answer aloud → the AI organizes your answer into a "My View" paragraph (the content is yours; the AI only helps put it into words, and never thinks or writes for you), then gives you a receipt when done. Topic aggregation is also supported: distill the viewpoints of multiple articles under one MOC into a review

What the client wants What the skill will do What the client can see
Complete the work covered by this skill Read the user request, necessary context, and this skill's main workflow, and execute the minimal reliable steps The client will see Obsidian/vault file changes, terminal logs, generated artifact paths, and the final receipt.
Missing dependencies, permissions, configuration, or keys Stop actions that require external state, and clearly state what is missing Install commands, application addresses, configuration paths, or questions requiring client confirmation
Execution complete Summarize successes, skips, failures, file changes, and verification results A completion receipt that can be copied into a ticket/log

How the client uses it

  1. State the goal in natural language and provide the necessary inputs: files, URLs, repos, workspaces, proposals, vaults, or platform account status.
  2. The Agent first determines whether this skill applies, then checks dependencies, configuration, permissions, and risky actions.
  3. For actions that can be dry-run or previewed, provide a preview first; when deletion, overwriting, sending, publishing, or writing remote state is involved, ask the client for confirmation first.
  4. After execution, verify the real output; do not substitute "looks successful" for evidence.
  5. The final reply must give the client a visible summary: what was done, a log summary, file changes, issues, and next steps.

Dependencies and installation

Install this skill (single skill):

npx skills add soia-team/soia-open-skills -g -a '*' -s soia-pkm-distill-article-opinion -y

Configuration conventions:

~/.config/soia-skills/soia-open-skills/soia-pkm/soia-pkm-distill-article-opinion/config.yml
SOIA_PKM_DISTILL_ARTICLE_OPINION_CONFIG_FILE=<custom-config-path>
  • If this skill does not need private configuration, you can skip creating config.yml。
  • If an API key, cookie, session, provider home, or local path is needed, it can only go into a private config.yml, the process environment, or the provider's own login state; it must not be written into the repository, vault body, or logs.
  • Strong dependencies, optional dependencies, and third-party skill relationships must be based on this SKILL.md 's subsequent "dependencies / prerequisites / resources / boundaries" description; if it is not clearly written, add the description first or ask the client, and do not guess.
  • Third-party skills may only declare dependencies and installation methods; do not directly modify third-party skill files.

Logs and completion receipt

Every execution must let the client see the process and results. Minimum receipt format:

完成:<一句话说明本次完成了什么>。

日志摘要:
- started: <检查到的输入/配置/依赖,不打印秘密值>
- processed: <数量或范围>
- created/updated: <数量或路径>
- skipped/failed: <数量和原因>

文件变化:
- <绝对路径或“未改动文件”>

验证:
- <运行过的检查、命令或人工核对点>

问题与下一步:
- <缺 key / 缺依赖 / 需要客户确认 / 建议下一条命令;没有则写“无”>

Core principles (non-negotiable)

The content belongs to the user; AI only helps them ask it out and put it into words—it never thinks or writes for them.

  • AI's responsibility: understand the original text, ask good questions, and organize the user's spoken answers into smooth first-person text.
  • What AI does not do: fabricate opinions, speak on the user's behalf, or add judgments the user never made.
  • If the user does not answer → do not write. Better to leave it blank than to make things up.

Mode A: Single-article distillation (default)

Triggers: "add my views to this article" "how do I see this article" "distill this article"

Process:

  1. Locate the article. When the user says "this article" = the article involved in the current conversation; otherwise use the filename / title under <vault-articles-dir>/ to find it with Glob/Grep.
  2. Read the original text(read ## 原文 / body paragraphs).
  3. Align on the skeleton: restate the article's core argument in 1–2 sentences so the user can confirm you understood it (and give them a starting point for thinking).
  4. Ask only one question at a time(go through the "three angles" below one by one, and only ask the next after getting an answer): target this article's specific arguments, useplain language, and givea one-sentence example answerto lower the barrier.
    • ⚠️ Practical lessons (must be followed):Never throw out 3 questions plus a table at once—it will directly overwhelm the user, and they will not know where to start answering. One at a time, with examples, is what lets the user actually answer.
  5. Stop and wait for the user to answer. It is fine if the user is colloquial, answers only one or two sentences, or says "no thoughts" and skips.
  6. After all three angles are asked (or the user indicates enough),organize into text: organize the user's answers into a smooth first-person "My Views." Preserve their opinions, judgments, and tone; only polish and structure,do not add filler。
  7. Write in: Edit the article's ## 我的看法 section. Empty section / placeholder comment → fill directly; existing content → do not overwrite, ask "append or replace."
  8. Give a receipt(see §A receipt must be given to the user after execution).

Three-angle questioning method (ask one at a time)

Angle What to ask Purpose
① Stance Do youbuy intothe author's core argument? Does it get to the essence, or is it overstated for traffic? Force out a clear attitude
② Experience test Which pointmatches your experience/observations? Which one is exaggerated/inaccurate? Test with personal experience
③ Meaning to you This articlechanged what judgment of yours, or made you want to do what? Move from "read it" to "how should I use it"

Mode B: Topic aggregation

Triggers: "distill topic X into a viewpoint" "how do I see Agent development as a whole"

  1. Read _MOC/<分类>/<主题>.md to get the article list.
  2. Read each article's ## 我的看法(already-distilled single-article views).
  3. mostly empty → Hint: "Of the N articles on this topic, only M have distilled opinions. It's recommended to run Mode A on a few first." Let them choose which articles to distill first.
  4. Once you have material, synthesize it intoan overall judgment(your core view + each article as supporting evidence).
  5. Save <vault-drafts-dir>/YYYY-MM-DD-<主题>-观点综述.md,tags:[草稿]。
  6. This draft is the input for soia-pkm-compose-article-draft .

Write boundaries

  • Only touch ## 我的看法(Mode A) ornewly createdraft (Mode B). Never touch ## 原文 / ## 摘要 / frontmatter。
  • Contentmust come from user answers, the AI does not fabricate.
  • ## 我的看法 is normally left empty for the user; distill isa user-initiated requestfor help writing it down, and what is written down is still the user's own words.

After execution, you must give the user a receipt

Writing is not the endpoint. After writing, be sure to output the result to the user; do not finish silently:

  1. Where it was written: which article's ## 我的看法(give filename / path).
  2. Opinion summary: restate the newly written view in 1–2 sentences so the user can confirm at a glance.
  3. Invite fine-tuning: hint "This is your view; tell me which sentence you want changed."

The same applies to topic aggregation mode: tell where the draft was saved and what the core argument is.

Position in the closed loop

clip-*(收) → organize(整理) → ★distill(点:收藏→观点) → compose(写) → publish(发)
  • Upstream:soia-pkm-clip-* archives the articles in.
  • Downstream:soia-pkm-compose-article-draft writes the opinions produced by distill into finished text.
  • MethodologyReference huashu-weread-advisor 's alchemy (reading line's highlights → note distillation)—distill is its counterpart in thearticle line. Only borrow the method, do not modify its files (third-party skill).

Third-party skill relationships

Third-party skill relationship to soia-pkm-distill-article-opinion relationship with
huashu-weread-advisor (alchaincyf/huashu-weread) Method reference: borrow alchemy's questioning and distillation approach, but this skill does not call it or require it to be installed
weread-skills (Tencent/WeChatReading) Non-dependency: this skill processes vault articles and does not directly read the WeChat Reading API
book-to-skill Non-dependency
find-skills Non-dependency