소스 정보
- 저장소
- abnazari/Grade7
- 최근 소스 활동
- 2026년 3월 4일 05:07
- 감지된 SKILL.md 언어
- 영어
- 스타
- 0
- 포크
- 0
설치 방법
기본적으로 소스를 먼저 확인하는 Prompt가 선택됩니다. 직접 명령으로 전환하거나 로컬 사본을 다운로드할 수도 있습니다.
소스 파일 검토
설치 여부를 결정하기 전에 SKILL.md와 SkillsMP에 표시된 보조 파일을 읽어 보세요.
메뉴
기본적으로 소스를 먼저 확인하는 Prompt가 선택됩니다. 직접 명령으로 전환하거나 로컬 사본을 다운로드할 수도 있습니다.
설치 여부를 결정하기 전에 SKILL.md와 SkillsMP에 표시된 보조 파일을 읽어 보세요.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
직접 명령은 검토 Prompt를 거치지 않습니다. 실행하기 전에 소스를 확인하세요.
npx skills add https://github.com/abnazari/Grade7 --skill writing-study-guide-topics명령은 한 줄로 유지됩니다. 복사하기 전에 가로로 스크롤해 전체 내용을 확인하세요.
로컬 사본을 원하시나요? SkillsMP에서 현재 제공할 수 있는 파일을 다운로드하세요.
SOC 직업 분류 기준
SKILL.md 표시 중
| name | writing_study_guide_topics |
| description | Guidelines for writing engaging Grade 7 math study guide topics |
The finished book MUST be 150–170 pages total (including front matter, all topics, and the answer key). There are 56 topics, so each topic averages roughly 2–3 printed pages. That means:
When in doubt, cut. A short, clear explanation that a student actually reads beats a long one they skip.
This is a single-edition Grade 7 math book. Each topic should teach ONE concept clearly and give students practice — nothing more. Keep it tight.
Topic files live in topics/. File naming: ch01-01-slug-here.tex
Write for a smart, curious 12-year-old. These students have Grade 7 foundations — make every explanation dead simple but don't talk down to them.
Every word must earn its place. Here are concrete examples:
| Too wordy (DON'T) | Concise (DO) |
|---|---|
| "A proportional relationship is a mathematical relationship where two quantities maintain a constant ratio to each other at all times." | "In a proportional relationship, two quantities always have the same ratio." |
| "In order to solve a two-step equation, you will need to undo the operations in reverse order." | "To solve a two-step equation, undo operations backward." |
| "Let's take a look at an example to see how this works in practice." | (Just show the example — skip the transition.) |
| "Now that we've learned about integers, let's practice what we've learned!" | (Just start the practice section — no need to announce it.) |
Rules:
conceptBox explains it, don't re-explain it in prose before the example.Follow Common Core State Standards (CCSS) for Grade 7. The five domains are:
Numbers at this level: all rational numbers (positive and negative integers, fractions, decimals), proportional reasoning, two-step and multi-step problems, probability (0 to 1). This builds on Grade 7 — students work with signed rationals, proportional relationships, and basic probability.
You have access to 100+ environments and commands (see the toolkit reference below). There is no rigid template. Your job is to pick the combination that best serves each topic.
General principles:
conceptBox + one workedExample + one mascotSays. That's usually enough. Don't stack four or five boxes.riddleBox if you have a great riddle. An empty filler environment is worse than nothing.mascotSays, tipBox, and keyIdea take less space than exploreBox or activityBox. Use the lighter option when both work.Things that tend to work well (use freely when they fit):
\mascotSays{} — the owl giving a memorable shortcut or insight. Students love this.\tipBox{} — practical tricks ("To check a proportion, cross-multiply!")\numberLine, \fractionBar, \fractionCircle, \barGraph, etc. A good visual is worth a page of explanation.\begin{workedExample} and \begin{sideBySideExample} — showing HOW to solve is the core of teaching.\begin{errorBox} — "find the mistake" is surprisingly effective for learning. Great for topics where common errors exist (integer signs, proportion setup, equation solving, percent increase/decrease).\begin{realWorld} — connecting math to life makes it stick. Especially powerful for percents, proportions, statistics, and probability topics.\sayLeft / \sayRight — dialogue-style explanations can break up dense content.Things to use sparingly (they take lots of space):
\begin{codeBreaker} — engaging but space-heavy. Use rarely, maybe 2–3 times in the whole book.\begin{mathTrail} — connected problem sequences. Reserve for review/capstone topics only.\begin{activityBox} — hands-on activities. This is a book, not a classroom. Use very rarely.\begin{storyProblem} — 1–2 sentences max for setup. Keep it short.\begin{riddleBox} — only if the riddle is genuinely good and short.\encouragement{} — a short motivational closer. Use on maybe half the topics, not all.Opening ideas (pick what fits, vary between topics):
conceptBox that gets straight to the point\begin{realWorld} scenario that motivates WHY this topic matters\sayLeft / \sayRight) that introduces the key idea\definitionSpotlight for a bold, clean definition\begin{exploreBox} for discovery-based learning\mascotSays{} that poses an intriguing question\begin{riddleBox} that hooks the readerA typical topic might flow like this — but feel free to deviate:
% ============================================================================
% Section X.Y — Topic Title
% CCSS 7.XX.X.X
% ============================================================================
\section{Topic Title}
\topicTitle{Topic Title}
\begin{learningGoals}
\begin{itemize}
\item Goal 1
\item Goal 2
\item Goal 3 (2–4 goals is typical)
\end{itemize}
\end{learningGoals}
% --- Teaching (keep to 2–3 environments total) ---
% e.g., one conceptBox + one workedExample + one mascotSays
% --- Practice (NO \newpage — let content flow naturally) ---
\begin{practiceBox}{Title}
\resetProblems
% 4–5 problems with answers
\end{practiceBox}
Target: entire file = 60–90 lines.
Firm structural rules:
\section{Title} (DO NOT add \topicTitle{} — the class file’s \section already renders a blue banner; adding \topicTitle creates a duplicate).\begin{learningGoals} near the top (2 goals is ideal).practiceBox).\newpage before the practice section. The \section command already forces a page break for each topic. Adding \newpage before practice wastes half a page of whitespace. Let content flow naturally — boxes are breakable and will split across pages.Everything in between is up to you — but keep it lean.
Problem count: Aim for 4–5 problems per topic. Quality over quantity. A few well-chosen problems teach more than a long list.
Difficulty progression: Start easy, end harder:
Problem types to mix and match:
\prob — standard numbered problem\trueOrFalse — quick true/false statement\multiChoice — multiple choice\circleAnswer — circle the correct option\wordProblem — word problem with answer line\wrongAnswer — fix the mistake (inside errorBox)\sortCategory / \sortItem — sorting/classifying (inside sortBox)\codeClue — code breaker clues (inside codeBreaker)\trailStop — connected problems (inside mathTrail)\answerBlankfillTable\begin{multicols}{2} or {3} for compact layouts when problems are short.Practice section structure:
\resetProblems inside the practiceBox.\practiceHeader[color]{Title} to organize subsections when you have different types (e.g., "Computation", "Word Problems", "Challenge").practiceBox too (like a challengeBox or codeBreaker after the main practice).Every single problem must have an answer. Place the answer command immediately after the problem.
| Answer type | Command | When to use |
|---|---|---|
| Simple answer | \answer{42} | Only for \multiChoice key or trivially obvious one-step answers |
| With explanation | \answerExplain{42}{...} | Most problems — the default choice |
| True/False | \answerTF{True} | \trueOrFalse problems |
| Multiple choice | \answerMC{C} | \multiChoice problems |
Use \answerExplain for nearly every problem. The student just learned this topic — if they couldn't solve a problem, a bare calculation won't help them either. The explanation is their mini-tutor.
Length: Each explanation should be 1–2 full printed lines (~80–200 characters). Walk the student through the reasoning step by step, not just the arithmetic.
What a good explanation includes:
| BAD (too short) | GOOD (teaches) |
|---|---|
$\frac{2}{3} \div \frac{1}{3} = 2$ | Divide the wall covered by the time: $\frac{2}{3} \div \frac{1}{3}$. Flip and multiply: $\frac{2}{3} \times \frac{3}{1} = 2$ walls per hour. |
$36 \div 90 = 0.4 = 40\%$ | Divide the part by the whole: $36 \div 90 = 0.4$. Convert to a percent by multiplying by $100$: $0.4 \times 100 = 40\%$. |
$180 \times 0.75 = 135$ | A $25\%$ discount means you pay $75\%$. Multiply: $180 \times 0.75 = \$135$. |
$(15 - 12) \div 12 = 0.25$ | Subtract to find the change: $15 - 12 = 3$ cm. Divide by the original: $3 \div 12 = 0.25$. Multiply by $100$ to get $25\%$. |
Rules:
\answerExplain over \answer. Use bare \answer{} only when the answer is self-evident (e.g., "Write the equation" → \answer{$c = 8h$}).\answerTF{} problems, add a brief reason in the text before or after if the answer isn't obvious.Include at least one visual per topic. Choose based on the concept:
Ratios & Proportional Relationships: \barGraph, \fillTable, \numberLine — tape diagrams, ratio tables, coordinate graphs for proportional relationships
Percents: \barGraph, \fractionBar, \areaGrid — percent bars, 10×10 grids, comparison visuals
Integers & Rational Numbers: \numberLine, \funCompare — number lines with negative numbers, comparison visuals
Expressions & Equations: \fillTable — balance diagrams (custom TikZ), algebra tile models, input/output tables
Geometry & Angles: \areaGrid, \perimeterRect, \ruler — scale drawings, angle diagrams, cross-sections (custom TikZ)
Circles, Area, SA, Volume: \fractionCircle, \areaGrid, \perimeterRect — circle diagrams, composite shapes, nets of 3D figures (custom TikZ)
Statistics: \barGraph, \begin{picGraph} with \picRow — dot plots, box plots, side-by-side comparisons
Probability: \fillTable, custom TikZ — tree diagrams, sample space tables, spinners
These are recommended but not every one needs to appear. Use the visuals that genuinely help explain the concept.
$...$ for ALL math, even simple numbers in equations: $2x + 3 = 11$.\times for multiplication, \div for division. Never use × or ÷ directly.\textbf{...} to bold key terms on first use.\begin{itemize}[leftmargin=*] for tighter bullet lists.\hspace and \vspace sparingly — the environments handle spacing.\setcounter{funProblem}{N} if you need to continue numbering across sections.This is your full toolkit. You don't need to memorize it — scan for what fits each topic.
| Environment / Command | Brief Description |
|---|---|
\begin{conceptBox}[color]{Title} | Main teaching box (default: green) |
\begin{stepsBox}[color]{Title} | Numbered steps with \funStep |
\begin{rememberBox} | Key points to remember |
\begin{mathRuleBox}{Title} | Math rule or formula |
\begin{vocabBox}[Title] | Vocabulary with \vocabWord{Term}{Def} |
\begin{learningGoals} | Lesson objectives |
\begin{compareBox}[color]{Left}{Right} | Side-by-side comparison |
\begin{exploreBox}[Title] | Guided discovery activity |
\begin{quickReview}[color]{Topic} | Compact concept refresher |
\begin{patternBox}[Title] | Pattern recognition |
\topicTitle{Text} | Topic banner |
\definitionSpotlight[color]{Text} | Prominent definition |
\keyIdea[color]{text} | Inline highlight |
\boxSubtitle[color]{Text} | Subtitle inside boxes |
| Environment / Command | Brief Description |
|---|---|
\begin{workedExample}[color]{Title} | Worked example |
\begin{sideBySideExample}[color]{Title} | Two-column: work left, explanation right |
\begin{solutionSteps} | Steps with \solStep |
\begin{showMeBox}[Title] | Detailed walkthrough |
\begin{numberedExample} | Auto-numbered example |
\begin{errorBox}[Title] | Find the mistake |
\answerHighlight[color]{equation} | Prominent final answer |
\miniAnswer[color]{value} | Small inline answer |
\tryIt{content} | "Your Turn!" prompt |
\wrongAnswer{work} | Crossed-out wrong work |
\answerBlank[width] | Blank for answers (default: 3cm) |
\answerLine[width] | Full-width ruled answer line |
\solutionLabel[text] | Styled "Solution:" label |
| Environment / Command | Brief Description |
|---|---|
\begin{practiceBox}[color]{Title} | Practice section |
\begin{showWorkBox}[color]{Title} | "Show Your Work" section |
\begin{findMissingBox}[color]{Title} | Fill-in-the-blank problems |
\begin{challengeBox}[Title] | Harder challenge problems |
\begin{quickCheck}[Title] | Fast assessment |
\begin{matchBox}[color]{Title} | Matching exercise |
\begin{sortBox}[color]{Title} | Sorting/classifying |
\begin{fillTable}[color]{Title} | Input/output table |
\begin{codeBreaker}[Title] | Solve-to-decode puzzle |
\begin{mathTrail}[Title] | Connected problem journey |
\begin{picGraph}[color]{Title} | Pictograph |
\prob | Auto-numbered problem |
\probInline | Inline numbered problem |
\resetProblems | Reset counter |
\practiceHeader[color]{Text} | Section header inside practice |
\wordProblem{text}{unit} | Word problem with answer line |
\trueOrFalse{statement} | True/False |
\multiChoice{Q}{A}{B}{C}{D} | Multiple choice (inline row) |
\multiChoiceGrid{Q}{A}{B}{C}{D} | Multiple choice (2×2 grid) |
\circleAnswer{Q}{a}{b}{c}{d} | Circle the answer |
\codeClue{Letter}{Problem} | Code breaker clue |
\secretMessage{format} | Decoder line |
\trailStop |
| Environment / Command | Brief Description |
|---|---|
\mascotSays{text} | Owl mascot tip |
\tipBox{text} | Pencil character trick |
\begin{funFact} | Interesting math tidbit |
\didYouKnow{text} | Quick fact |
\begin{realWorld}[Title] | Real-world connection |
\begin{storyProblem}[color]{Title} | Story/word problem scene |
\begin{riddleBox}[Title] | Math riddle |
\begin{activityBox}[Title] | Activity |
\begin{warningBox}[Title] | Common mistakes |
\begin{thinkAboutIt}[Title] | Thought-provoking question |
\begin{proofBox}[Title] | Justify reasoning |
\begin{strategyBox}[Title] | Problem-solving strategy |
\formulaCard{Title}{Formula} | Formula reference card |
\begin{summaryBox}[Title] | End-of-topic summary |
\sayLeft{name}{text} | Left speech bubble |
\sayRight{name}{text} | Right speech bubble |
\encouragement{text} | Motivational closer |
| Command | Brief Description |
|---|---|
\numberLine[step]{start}{end} | Number line with ticks |
\numberLineFraction[color]{parts} | 0-to-1 fraction line |
\fractionBar[color]{shaded}{total} | Fraction bar |
\fractionCircle[color]{shaded}{total} | Fraction circle |
\barGraph[color]{Title}{Label/Val,...}{max} | Bar chart |
\dotGroups[color]{groups}{dots} | Grouped dots |
\arrayGrid[color]{rows}{cols} | Multiplication array |
\equalSharing[color]{total}{groups} | Division sharing visual |
\columnAdd{a}{b} | Vertical addition |
\columnAddFull{a}{b}{carries}{sum} | Addition with carries and answer |
\columnAddWork{a}{b} | Addition workspace (blank) |
\columnSub{a}{b} | Vertical subtraction |
\columnSubFull{a}{b}{answer} | Subtraction with answer |
\columnSubWork{a}{b} | Subtraction workspace (blank) |
\placeValueTable{H}{T}{O} | Place value grid |
\baseTenBlocks{flats}{rods}{units} | Base-ten blocks |
\numberBond[color]{whole}{part1}{part2} | Part-whole diagram |
\factFamily{a}{b}{product} | Fact family triangle |
\funCompare{left}{op}{right} | Comparison visual |
\areaGrid[color]{rows}{cols} | Area tiling |
\perimeterRect[color]{w}{h}{unit} | Labeled rectangle |
\skipCountArc[color]{start}{end}{step} | Skip counting arcs |
| Command | Brief Description |
|---|---|
\answer{value} | Simple answer |
\answerExplain{value}{explanation} | Answer with solution steps |
\answerTF{True/False} | True/False answer |
\answerMC{letter} | Multiple choice answer |
\printAnswerKey | Render answer key (in main file) |
If a topic genuinely needs a visual or interactive element that no existing environment provides, you may create new environments. Add them to the appropriate .sty file in VM_packages/ (or create a new .sty file if needed).
When creating new environments:
.sty files to match the coding style, color conventions, and tcolorbox patterns.funBlue, funGreen, funOrange, etc.).CRITICAL: Never modify existing environments or commands. They are shared across many topics and book types. Even a small change can break other sections. If an existing environment doesn't do exactly what you want, create a new one instead.
For the full environment reference with usage examples and code samples, see .agents/skills/latex_environments/SKILL.md.
Before finishing a topic, verify:
ch<CC>-<SS>-slug.tex and placed in topics/\section{Title} (NO \topicTitle — the section banner handles it)\begin{learningGoals} with 2–4 bullet points\resetProblems and NO \newpage before it\answer{}, \answerExplain{}{}, \answerTF{}, or \answerMC{}$...$These are concrete, tested techniques that cut topic files from 100–150 lines down to 60–90 without losing teaching quality.
| Cut this | Saves | Why it's safe |
|---|---|---|
| 4-line header comment blocks | 3 lines | One-liner (% CCSS 7.RP.A.1 — Topic Title) carries the same info |
\renewcommand{\arraystretch}{1.3} in tables | 1 line/table | Default spacing is fine for study guides |
\bigskip between elements inside environments | 1–3 lines | Environments already have internal spacing |
\solutionLabel when solution is inline | 1 line | Obvious from context; only use when steps follow |
\begin{solutionSteps} wrapper with \solStep | 3–5 lines | Inline math ($k = 10 \div 4 = 2.5$) is shorter and just as clear |
\practiceHeader subsections in practice | 2–3 lines | Unnecessary when there are only 4–5 problems |
| Redundant teaching environments (e.g., tipBox repeating what conceptBox said) | 3–5 lines | One clear explanation > two overlapping ones |
| Transition sentences ("Let's see...", "Now let's...") | 1–2 lines | Just show the next thing |
% CCSS 7.RP.A.1 — Topic TitlemascotSays or tipBox only if it adds a genuinely new insight, not repetition.$k = 13.50 \div 3 = 4.50$ on one line instead of 3 \solStep lines.$2$ & $\$3.50$ \\ $4$ & $\$7.00$ \\. Skip \arraystretch.\answerExplain{}{} for nearly every problem. Write 1–2 full lines that walk the student through the reasoning. Only use bare \answer{} when the answer is self-evident.\prob entries unless switching problem types.Before adding any environment, sentence, or problem, ask: If I remove this, does the student lose something important? If the answer is no, cut it. A 65-line file that teaches clearly is better than a 90-line file with padding.
\topicTitle{} in topic files. The \section{} command already renders a styled blue banner via the class file. Adding \topicTitle creates a duplicate header and wastes ~1cm of vertical space.\newpage before practice sections. Each \section already forces a page break. A second \newpage before practice leaves half a page blank. Let content flow naturally into the practice box.conceptBox, workedExample, practiceBox, errorBox, warningBox, realWorld — they all break across pages automatically. Don’t try to prevent breaks; embrace them.\mascotSays{} (minipage-based, ~3 lines) is lighter than an errorBox (tcolorbox, ~5+ lines) for the same message.\setstretch{1.25} in test/main files, not 1.4. The tighter line spacing saves ~10% vertical space across the book.\titleformat. Issuing \clearpage or \newpage inside \sectionBanner (which runs inside titlesec's \titleformat callback) causes a phantom blank page. The page break is shipped after the current page, but titlesec's internal state then ships an extra empty page before placing the banner. Fix: The page-break logic (\ifdim\pagetotal<50pt\else\newpage\fi) is placed in \AddToHook{cmd/section/before} in studyGuide.cls, which fires BEFORE titlesec processes the section. The \sectionBanner command itself must NOT contain any page-break commands.| Math trail stop |
\selfCheck | Self-assessment confidence scale |
\answerSpace[height] | Vertical space for work |
\sortItem | Sortable item tag |
\clockFace{hour}{minute} |
| Analog clock |
\ruler{length}{unit} | Ruler |
\coin[color]{label} | Coin |
\tallyMarks{count} | Tally marks |
\multFact{a}{b}{product} | Multiplication fact |