Skip to main content

register-shift

Use when rewriting text in any language to a higher or lower complexity, density, or academic register level.

소스 정보

저장소
anntnzrb/agents
최근 소스 활동
2026년 10월 20일 21:03
감지된 SKILL.md 언어
영어
스타
1
포크
0

설치 방법

기본적으로 소스를 먼저 확인하는 Prompt가 선택됩니다. 직접 명령으로 전환하거나 로컬 사본을 다운로드할 수도 있습니다.

소스 파일 검토

설치 여부를 결정하기 전에 SKILL.md와 SkillsMP에 표시된 보조 파일을 읽어 보세요.

파일 탐색기
5 개 파일

SKILL.md 표시 중

SKILL.md
소스 지침 · 읽기 전용 미리보기
name
register-shift
description
Use when rewriting text in any language to a higher or lower complexity, density, or academic register level.
license
AGPL-3.0-or-later
metadata
{"author":"anntnzrb"}
# Register shift Rewrite a text to a target complexity level in its own language while keeping its meaning identical. The output says the same thing in a denser or a plainer register. ## When to use - The user asks to make a text more academic, dense, formal, or complex, or simpler, plainer, or easier to read. - The user names a level, a direction (`max`, `min`), or a target audience. - Not for removing AI writing patterns (`unslop`), translating, summarizing, or adding content. Length MAY change. Content MUST NOT. ## Levels Target an absolute level, never a relative one. Map the request: | Level | Name | Target reader | Anchor | | --- | --- | --- | --- | | 1 | Easy-to-read | Low literacy, early learner | Lectura Fácil, Leichte Sprache, CEFR A1-A2 | | 2 | Plain | General public | ISO 24495-1 plain language, CEFR B1 | | 3 | Standard | Educated adult | Quality press, CEFR B2 | | 4 | Academic | Specialist reader | Peer-reviewed article, CEFR C1 | | 5 | Maximal | Expert in the field | Densest grammatical academic prose, CEFR C2 | - `max` means level 5. `min` means level 1. - Without a level or direction, ask which direction. Without a level but with a direction, use 5 or 1. ## Invariants The rewrite MUST preserve every item below. These rules override every lever. - Propositions: every claim in the source, and no claim absent from it. - Negation, conditions, exceptions, and scope words such as "only", "all", "some". - Quantities, dates, units, names, quotations, and technical terms the reader needs. - Certainty: do not add or remove hedges. "X causes Y" stays certain, and "may" stays "may". - Agents: keep a named actor when the source names one. Agentless constructions apply only when the source omits the actor. - Causal and temporal order. Do not invent causal links between adjacent facts. - Language and script: write in the source language and variety. - References: never invent citations, sources, authors, or data, even at level 5. - Formatting: keep lists, headings, code, and URLs. Rewrite only the prose. ## Workflow 1. Detect the source language and the target level. 2. List the source propositions for your own checking: claims, numbers, names, conditions, negations, certainty markers. Do not print the list unless asked. 3. Rewrite with the levers for the direction, strongest first, from `references/levers.md`. Stop when the rewrite meets the level's anchor. Never stack levers past grammaticality. 4. Score the source and the rewrite: ```text uv run --script <skill-dir>/scripts/cli.py <source-file> <rewrite-file> ``` Write both texts to files under `<temp-dir>` first. For `max`, `lix` and `words_per_sentence` SHOULD rise. For `min`, they SHOULD fall. If they move the wrong way, apply the next lever and score again. When `unsegmented_script` is true, skip the score and say the metric does not apply to that script. 5. Check equivalence in both directions against the proposition list: - Forward: every claim in the rewrite is supported by the source. Nothing added. - Backward: every source proposition appears in the rewrite. Nothing dropped. 6. Fix any failure and repeat steps 4 and 5. After two failed repairs, deliver the closest valid rewrite and name the unresolved item. ## Output - Print the rewritten text first, ready to paste. - Then one line: level, LIX before and after, and the equivalence result. Omit this line when the user asks for text only. - Do not explain the levers unless asked. ## Public entrypoint ```text uv run --script <skill-dir>/scripts/cli.py ORIGINAL [REWRITE] ``` - Each argument is a file path, or `-` for stdin. - One argument prints metrics for that text. Two print `original`, `rewrite`, and `delta` (rewrite minus original). - Metrics: `words`, `sentences`, `long_words` (more than 6 characters), `words_per_sentence`, `long_word_pct`, `lix`, `rix`, `unsegmented_script`. - LIX and RIX measure surface length only. Use them as a direction check, not a quality score. Step 5 checks equivalence. - Exit `2`: usage error, unreadable file, or a text with no words. ## Follow-up reads | Need | Read | When | | --- | --- | --- | | Ranked levers for raising and lowering complexity, with per-language mechanisms | `references/levers.md` | Before step 3 of every rewrite | ## Validation ```text uv run --script skills/current/skill-creator/scripts/cli.py gates skills/current/register-shift --tests uv run --script skills/current/skill-creator/scripts/cli.py quick-validate skills/current/register-shift ```
GitHub에서 보기