بنقرة واحدة
meta
Meta skill loaded for all phases: project conventions, file modification rules, code quality standards
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
القائمة
Meta skill loaded for all phases: project conventions, file modification rules, code quality standards
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
استنادا إلى تصنيف SOC المهني
Template repo file structure: where screens, navigation, theme, data, and platform entries live in the monorepo
Android TV build and D-pad QA using Android CLI first, with bounded Gradle and ADB fallbacks
Expo Application Services cloud build configuration for TV app APK and IPA generation
Expo TV configuration: app.json plugins, prebuild settings, platform-specific config for react-native-tvos
Fire TV leanback manifest configuration: banner icons, LEANBACK_LAUNCHER intent filter, TV-specific Android settings
Gradle build commands: assembleDebug, assembleRelease, APK output paths, and emulator installation
| name | meta |
| description | Meta skill loaded for all phases: project conventions, file modification rules, code quality standards |
| applies_to | ["all"] |
| load_when | every turn |
You have a skill library. Use it. This file is loaded on every turn so you remember it exists. The other skills are loaded by phase; you don't have to manage that — the harness does. Your job is to consult skills before acting, and to write new ones when you solve something that will come up again.
Before writing code or invoking a non-trivial tool, ask: is there a skill for this?
If yes → read it, follow its decision tree, then act.
If no but the problem is recurring → solve it manually 3 to 10 times, then write a skill via write_auto_skill.
If no and the problem is one-off → just solve it. Don't pre-codify.
The harness will surface relevant skills in your context automatically based on the current phase. If you find yourself reasoning about a problem and no relevant skill is loaded, don't guess — call request_skill_load(name) to pull one, or list_skills() if you're not sure what's available. Both are cheap and safe.
request_skill_load(name) — pull a skill not auto-loaded for this phase. Use when you hit a problem that feels like it should have established guidance. If the name is wrong, the tool returns suggestions.list_skills(scope?) — see what's available. scope is core | auto | all. Call this when an error message contains a domain word you haven't seen before (e.g. "Vega," "leanback," "manifest schema") — there's probably a skill for it.write_auto_skill(name, frontmatter, content) — codify a learned pattern after solving it manually 3+ times. The harness validates frontmatter shape and quality before accepting. Rejections come with reasons; fix and retry.The skill being in your context isn't enough. Actually open it and reason from it when:
template-anatomy.md says where it goes.shared-ui-catalog.md says whether to reuse instead.spatial-navigation.md has the diagnostic tree.expo-tv-config.md or eas-build.md has the symptom table.vega-sdk.md. Vega is not Android.theming.md. Don't eyeball contrast.If you act without consulting and you were wrong, that's the failure mode this library exists to prevent.
template-anatomy.md — where every file lives in the monoreposhared-ui-catalog.md — what components/screens already exist; reuse before generatingtheming.md — brand kit → theme tokens; contrast and typography rulesmanifest-wiring.md — content.json → hooks → screens; validation rulesspatial-navigation.md — React TV Space Navigation patterns and focus debuggingvega-sdk.md — Fire TV Vega OS (Kepler) — different runtime from Fire OSfiretv-leanback.md — Android TV / Fire TV (Fire OS) manifest requirementsexpo-tv-config.md — EXPO_TV=1, prebuild, config pluginvideo-player.md — react-native-video and Kepler media; stream typeseas-build.md — TV build profiles, when to use EAS vs local10ft-ui.md — type scale, contrast, safe areas — only for new screensAfter 5+ tool calls solving a novel sub-problem, call write_auto_skill(name, frontmatter, content) before moving on. The skill is stored at ./skills/auto/<name>.md. Include:
applies_to (which phase loads it) and load_when (human description).Future runs load it automatically. The harness will probably never reach for that exact same novel problem twice; the value is in the class of problem the skill describes.
The orchestrator validates and may reject:
applies_to or load_when → reject with reason.Read the rejection reason, fix, retry. Don't retry blindly.
<TouchableOpacity> for focusable elements because it responds to touch, not D-pad select" is a skill.The base template (AmazonAppDev/react-native-multi-tv-app-sample) ships ~80% of a working TV app. Your job is customization, not generation. If you're writing a <View> with a <FlatList> and <TouchableOpacity>, stop. The template has <Grid>. Use it.
When you find yourself wanting to write from scratch, the question is always: what existing component or screen am I about to reinvent? If the answer is "nothing — this is genuinely new," then proceed (and load 10ft-ui.md first). Otherwise, reach for the existing piece.