一键导入
character-aging-progression
Generate visually consistent character images across different life stages using nano-banana-pro with age-specific prompts
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Generate visually consistent character images across different life stages using nano-banana-pro with age-specific prompts
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
Defense-in-depth, PII protection, secrets scanning, and secure packaging for distributed software
Systematic testing for confidence without over-testing — the right test at the right level
Generate consistent visual character references across multiple scenarios using Flux and nano-banana-pro on Replicate
Create professional ultra-wide cinematic banners for GitHub READMEs using Flux and Ideogram models with typography options
Generate professional presentations using the Gamma API with expert storytelling consulting based on Duarte methodology.
Intelligent project persona identification using priority chain detection with LLM and heuristic fallback
| name | Character Aging Progression |
| description | Generate visually consistent character images across different life stages using nano-banana-pro with age-specific prompts |
| applyTo | **/*aging*,**/*age-progression*,**/*life-stage*,**/*avatar* |
| triggers | ["age progression","aging","make me older","make me younger","age me","years old","aging trifecta","face aging","nano-banana","life stages","generate age","create age"] |
Create consistent character avatars from childhood through elderhood — maintaining identity while showing natural aging.
Workflow for generating age-progression image sets that maintain character identity across 13 life stages (ages 3-75). Uses nano-banana-pro with reference face image for facial consistency plus age-specific descriptors for natural aging.
Validated: Alex avatar set — 13 ages × successful generations
| Age | Stage | Key Visual Markers |
|---|---|---|
| 3 | Early Childhood | Round face, large eyes relative to face, soft features |
| 7 | Middle Childhood | More defined features, baby fat reducing |
| 13 | Early Adolescence | Face lengthening, features sharpening |
| 15 | Mid Adolescence | Adult proportions emerging, youthful skin |
| 18 | Late Adolescence | Near-adult features, fresh complexion |
| 21 | Young Adult | Adult features fully formed, peak vitality |
| 25 | Established Adult | Features settled, confident bearing |
| 30 | Adult | Subtle maturity signs, professional demeanor |
| 42 | Middle Age | Fine lines beginning, distinguished look |
| 55 | Late Middle Age | Gray appearing, crow's feet, wisdom in eyes |
| 62 | Early Senior | More pronounced lines, fuller wisdom |
| 68 | Senior | Silver/white hair dominant, deep character lines |
| 75 | Elder | Weathered dignity, life experience visible |
Recommended: google/nano-banana-pro — Best face consistency with reference image
const AGES = [3, 7, 13, 15, 18, 21, 25, 30, 42, 55, 62, 68, 75];
async function generateAgeProgression(characterConfig, referenceImage) {
const results = [];
for (const age of AGES) {
const prompt = buildAgePrompt(characterConfig, age);
const result = await replicate.run("google/nano-banana-pro", {
input: {
prompt,
image: await toDataURI(referenceImage),
aspect_ratio: "1:1",
output_format: "png"
}
});
results.push({ age, url: result });
}
return results;
}
const AGE_DESCRIPTORS = {
3: "3-year-old toddler, round chubby cheeks, large curious eyes, soft baby features, innocent expression",
7: "7-year-old child, youthful face beginning to mature, bright curious eyes, playful yet thoughtful",
13: "13-year-old teenager, face lengthening into adult proportions, youthful energy, intelligent gaze",
15: "15-year-old teen, near-adult features emerging, fresh complexion, confident yet developing",
18: "18-year-old young adult, adult features forming, youthful skin, mature confidence emerging",
21: "21-year-old young professional, adult features fully formed, peak vitality, sharp intelligent eyes",
25: "25-year-old adult, established features, confident bearing, professional demeanor",
30: "30-year-old adult, subtle signs of maturity, experienced gaze, professional polish",
42: "42-year-old, distinguished appearance, fine lines beginning, wisdom visible in eyes",
55: "55-year-old, gray hair appearing at temples, crow's feet, dignified bearing, deep experience",
62: "62-year-old senior, more pronounced lines, fuller silver hair, warm wise expression",
68: "68-year-old, silver/white hair dominant, deep character lines, experienced wise gaze",
75: "75-year-old elder, weathered dignified face, white hair, life experience visible, gentle wisdom"
};
function buildAgePrompt(character, age) {
const baseDesc = character.coreIdentity; // "Alex Finch, intelligent features, analytical eyes"
const ageDesc = AGE_DESCRIPTORS[age];
const style = character.style || "professional portrait, soft natural lighting, clean background";
return `${baseDesc}, ${ageDesc}, ${style}`;
}
Define 3-5 unchanging traits that persist across all ages:
const CHARACTER = {
coreIdentity: "Alex Finch, sharp intelligent features, " +
"distinctive analytical eyes, determined jawline, " +
"characteristic half-smile",
// These traits appear in EVERY age prompt
};
Avoid anachronisms — match style to age:
Choose a reference that shows:
| Set Size | Model | Cost | Time |
|---|---|---|---|
| 13 ages | nano-banana-pro | $0.33 | ~7 min |
| 13 ages × 2 variants | nano-banana-pro | $0.65 | ~14 min |
| Full persona set (63) | nano-banana-pro | $1.58 | ~35 min |
Best Practice: Generate ages 21 and 42 first to validate consistency before full set.
Compare across ages for:
| Issue | Cause | Fix |
|---|---|---|
| Age jump too drastic | Age descriptors too different | Add intermediate transition language |
| Baby/child looks different | Reference face too adult | Use neutral young adult reference |
| Senior unrecognizable | Too much aging description | Reduce weathering descriptors |
characters/
{character-name}/
reference/
face-reference.png
ages/
Alex-03.png
Alex-07.png
...
Alex-75.png
generation-report.json
Alex's avatar system uses age progression for:
// From avatarMappings.ts
export const AVAILABLE_AGES = [3, 7, 13, 15, 18, 21, 25, 30, 42, 55, 62, 68, 75];
export function findClosestAge(age: number): number {
// Returns nearest available age from set
}
High — Empirically validated through: