Generate or optimize academic paper abstracts using the 5-sentence Farquhar formula. Supports generate-from-scratch and restructure-existing paths. Produces labeled output for formula verification plus a clean version for clipboard use. 摘要生成与优化,支持从原始材料生成或改写现有摘要。
This Skill generates or optimizes academic paper abstracts using the locked 5-sentence Farquhar formula: [1: Contribution], [2: Difficulty], [3: Method], [4: Evidence], [5: Key Result]. It operates on two mutually exclusive paths — generate a new abstract from raw materials (paper sections, bullet points, or a brief description), or restructure an existing abstract to comply with the formula. Both paths produce labeled output first so users can verify formula compliance sentence by sentence, followed by a clean plain-paragraph version ready for clipboard use. When a target journal is specified, journal-specific style conventions are applied.
Activates when the user asks to:
Example invocations:
| Mode | Default | Behavior |
|---|---|---|
direct | Yes | Single-pass abstract output using the 5-sentence formula |
batch | Not supported — abstract requires full paper context |
Default mode: direct. User provides content and receives labeled + clean abstract in one pass.
Path selection (within direct mode):
| File | Purpose |
|---|---|
references/expression-patterns.md | Academic expression patterns overview |
| File | When to Load |
|---|---|
references/expression-patterns/introduction-and-gap.md | Contribution and gap framing (sentences 1-2) |
references/expression-patterns/conclusions-and-claims.md | Calibrated claim language (sentences 1 and 5) |
references/expression-patterns/methods-and-data.md | Method description (sentence 3, when weak) |
references/expression-patterns/results-and-discussion.md | Evidence and result framing (sentences 4-5) |
references/journals/[journal].md.Before starting, ask about:
Path inference:
Rules:
direct mode with sufficient context, proceed without pre-questions..planning/workflow-memory.json. If file missing or empty, skip to Step 1.ppw:abstract that has appeared >= threshold times in the log. See skill-conventions.md > Workflow Memory > Pattern Detection for the full algorithm.direct, skip Ask Strategy questions.references/expression-patterns.md overview.references/journals/[journal].md. If missing, refuse with: "Journal template for [X] not found. Available: CEUS."english only, no bilingual, only english, 不要中文. Store result as bilingual_mode (true/false). This flag governs Step 3 output below.{"skill": "ppw:abstract", "ts": "<ISO timestamp>"} to .planning/workflow-memory.json. Create file as [] if missing. Drop oldest entry if log length >= 50.references/expression-patterns/introduction-and-gap.md for contribution and gap framing.references/expression-patterns/conclusions-and-claims.md for calibrated claim language.references/expression-patterns/methods-and-data.md if the user's method description is weak.references/expression-patterns/results-and-discussion.md for sentences 4-5.[MISSING: position-name] — never silently drop content.Present the labeled version first (formula positions explicit, see Output Contract).
Present the clean version (plain paragraph, no labels) separated by ---.
If the user wants to save: offer to write to a file using the Write tool.
If word limit was specified, report word count; warn if over limit.
Bilingual display: If bilingual_mode is true: after presenting the labeled version and after presenting the clean version, append a > **[Chinese]** ... blockquote for each sentence of the abstract. Use a header: "双语对照 / Bilingual Comparison:" before the blockquotes. Format:
[Chinese] [1: 贡献] ... [Chinese] [2: 难度] ... [Chinese] [3: 方法] ... [Chinese] [4: 证据] ... [Chinese] [5: 关键结果] ...
Each blockquote corresponds to one Farquhar formula sentence. Label prefixes in Chinese are for readability only -- the clean version Chinese follows the plain paragraph structure without labels.
If bilingual_mode is false (opt-out detected): skip bilingual display entirely.
Optionally recommend the Polish Skill for further expression refinement.
| Output | Format | Condition |
|---|---|---|
labeled_abstract | Labeled 5-sentence block with [N: Position] markers | Always |
clean_abstract | Plain paragraph with no labels, separated by --- | Always |
| Word count | Integer | When user specified a word limit |
bilingual_abstract | > **[Chinese]** ... blockquotes in session (one per sentence) | When bilingual_mode is true (default). Skipped when opt-out detected. |
Exact labeled format:
[1: Contribution] We propose...
[2: Difficulty] Despite growing interest in X, existing approaches fail to...
[3: Method] We address this by...
[4: Evidence] Evaluated on N datasets...
[5: Key Result] Our approach achieves...
---
Clean version:
We propose... Despite growing interest in X, existing approaches fail to... We address this by... Evaluated on N datasets... Our approach achieves...
| Situation | Handling |
|---|---|
| Input is ambiguous (not clearly raw content or existing abstract) | Ask before proceeding: "Do you have an existing abstract to restructure, or shall I generate one?" |
| Existing abstract has fewer than 5 sentences | Run restructure path; flag missing positions with [MISSING: ...] |
| User specifies word limit | Count words in output; warn if over limit with exact count |
| Journal specified but template missing | Refuse: "Journal template for [X] not found. Available: CEUS." |
| Formula position cannot be filled from available content | Flag with [MISSING: difficulty statement]; do not invent content |
| User provides only a title or one-sentence summary | Ask for more content before proceeding |
| Scenario | Fallback |
|---|---|
| Structured Interaction unavailable | Ask 1-2 plain-text questions (path + journal) |
| Expression pattern leaf missing | Proceed with general academic register; warn user |
| Journal template missing (no journal specified) | Ask once; if declined, use general academic style |
| Write tool fails | Present output in conversation instead |
Invocation: "Help me restructure my abstract to follow the 5-sentence formula."
User pastes: "In this paper we study urban mobility patterns using GPS data. We find that mobility is highly predictable. We propose a model called MobNet. It outperforms existing approaches by 12% on the next-location prediction task."
Output:
[1: Contribution] We propose MobNet, a model for predicting urban mobility using GPS data.
[2: Difficulty] Despite the prevalence of GPS data, existing mobility models fail to capture [MISSING: difficulty statement — why prediction is hard or why existing approaches fall short].
[3: Method] MobNet addresses this by [MISSING: method description — how MobNet works].
[4: Evidence] Evaluated on a next-location prediction task using GPS traces from urban environments.
[5: Key Result] MobNet outperforms existing approaches by 12% on next-location prediction.
---
Clean version:
We propose MobNet, a model for predicting urban mobility using GPS data. [MISSING: difficulty statement]. MobNet addresses this by [MISSING: method description]. Evaluated on a next-location prediction task using GPS traces from urban environments. MobNet outperforms existing approaches by 12% on next-location prediction.
Two formula positions are flagged as missing. Please provide: (1) why mobility prediction is hard or what existing approaches fail to do, and (2) a brief description of how MobNet works.
Skill: abstract-skill Conventions: references/skill-conventions.md