Skip to content
Back to skills

Version Safety

ASecurity

**Context:** Protection of code history and operational continuity **Platform:** NinjaTrader 8, GitHub Repo **Universal Path:** `${PROJECT_ROOT}` **Executors:** ${BRAIN} (Reasoning), ${HANDS} (Gemini Flash via delegation_bridge)

  • 2 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added September 27, 2026
businessgotestinggitperformance

Security analysis

A100/100

Scanned September 27, 2026

npx -y skills add David-Li0406/meta-skill-evloving --skill version-safety --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Version Safety?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Version Safety
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/david-li0406-version-safety/badge)](https://www.skillsdirectory.com/skills/david-li0406-version-safety)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
name: version-safety
description: Enforces safe file versioning practices for NinjaTrader strategy development. Use this skill ALWAYS when creating new features, making updates, or saving any code changes. Prevents overwriting prior versions. Ensures new code is deployed to both the project and NinjaTrader for testing.

# Version Safety Protocol

**Context:** Protection of code history and operational continuity
**Platform:** NinjaTrader 8, GitHub Repo
**Universal Path:** `${PROJECT_ROOT}`
**Executors:** ${BRAIN} (Reasoning), ${HANDS} (Gemini Flash via delegation_bridge)

## Core Rules

1. **NEVER overwrite existing files** - Always create a new file with a descriptive suffix
2. **NEVER auto-commit to GitHub** - Only commit when user explicitly requests
3. **ALWAYS deploy to both locations** - Project repo AND NinjaTrader strategies folder
4. **ALWAYS confirm filename** - Ask user before saving if suffix is unclear

## File Naming Convention

Use descriptive suffixes that explain the change:

| Change Type | Naming Pattern | Example |
|-------------|----------------|---------|
| UI changes | `_UI_[DESCRIPTION]` | `V8_2_UI_HORIZONTAL.cs` |
| Bug fixes | `_BUGFIX` or `_FIX_[WHAT]` | `V8_2_FIX_STOPS.cs` |
| New feature | `_[FEATURE_NAME]` | `V8_2_COPY_TRADING.cs` |
| Performance | `_PERF` or `_OPTIMIZE` | `V8_2_PERF.cs` |
| Cleanup | `_CLEANUP` | `V8_2_CLEANUP.cs` |
| Milestone | `_MILESTONE` | `V8_2_MILESTONE.cs` |

When uncertain about the suffix, ask the user.

## Deployment Locations

For this project, always deploy to:

1. **Project repo**: `${PROJECT_ROOT}/`
2. **NinjaTrader**: `C:/Users/${USERNAME}/Documents/NinjaTrader 8/bin/Custom/Strategies/`

## Workflow

### Before Making Changes

1. Identify the base file (e.g., `UniversalORStrategyV8_2.cs`)
2. Determine the new filename with descriptive suffix
3. Confirm with user: "I'll save this as `[NEW_FILENAME]`. Is that correct?"

### After Making Changes

1. Create the new file in the **project repo**
2. Update the class name inside the file to match the new filename
3. Copy the file to **NinjaTrader strategies folder**
4. Inform user: "Saved to both locations. Compile in NinjaTrader to test."

### What NOT To Do

- Do NOT use `Edit` on the original file - use `Write` to create new file
- Do NOT run `git add`, `git commit`, or `git push` unless user explicitly asks
- Do NOT delete or archive original files unless user requests
- Do NOT assume the user wants GitHub updated

## Example Interaction

**User**: "Add a new button to the UI"

**Agent response**:
1. "I'll create this as `UniversalORStrategyV8_2_UI_NEWBUTTON.cs`. Sound good?"
2. [After user confirms] Make changes
3. Save to project repo
4. Copy to NinjaTrader
5. "Done. Files saved to:
   - Project: `UniversalORStrategyV8_2_UI_NEWBUTTON.cs`
   - NinjaTrader: `UniversalORStrategyV8_2_UI_NEWBUTTON.cs`

   Open NinjaTrader and compile (F5) to test. Original V8_2 is unchanged."

## Related Skills
- [file-manager](../file-manager/SKILL.md) - File operations and deployment
- [delegation-bridge](../delegation-bridge/SKILL.md) - Safe deployment execution
- [wearable-project](../antigravity-core/wearable-project.md) - Portability standards
- [universal-or-strategy](../universal-or-strategy/SKILL.md) - Project context

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…