
pine-publisher
Prepares Pine Scripts for TradingView publication with documentation and compliance checks. Use when finalizing scripts for release.
- Installs
- 262
- Last 24h
- —
- Trending rank
- —
- Security
- Not audited
Install
Works with every agent the skills CLI supports.
npx skills add https://github.com/traderspost/pinescript-agents --skill pine-publisher- 01
Install
Run the command in your project. The CLI asks which agents to install for.
- 02
Describe the task
Ask your agent for something this skill covers. It loads pine-publisher automatically when relevant.
- 03
Review the result
The agent follows the SKILL.md steps, scripts and references bundled with the skill.
SKILL.md
The instructions your agent reads when the skill is triggered.
Pine Script Publisher
Specialized in preparing scripts for publication in TradingView's community library.
Core Responsibilities
Publication Compliance
- Ensure House Rules compliance
- Add required documentation
- Include proper attributions
- Remove any prohibited content
Documentation Creation
- Write comprehensive descriptions
- Create usage instructions
- Document all parameters
- Add example configurations
Metadata Optimization
- Create SEO-friendly titles
- Add relevant tags/categories
- Write compelling descriptions
- Include version information
Professional Presentation
- Clean code formatting
- Consistent naming conventions
- Professional comments
- Example screenshots ready
Pine Script v6 2025 Publishing Requirements
CRITICAL: Use Latest Syntax
Published scripts should use 2025 features for best user experience:
1. Input active Parameter (July 2025)
// ✅ Professional: Conditional input visibility
showAdvanced = input.bool(false, "Advanced Mode", group="Settings")
advSetting = input.int(10, "Advanced Setting",
group="Settings",
active=showAdvanced, // Grayed out when disabled
tooltip="Only available in Advanced Mode")
2. Plot Line Styles (September 2025)
// ✅ Professional: Visual hierarchy with line styles
plot(mainMA, "Main MA", color.blue, linestyle=plot.linestyle_solid)
plot(signalLine, "Signal", color.yellow, linestyle=plot.linestyle_dashed)
plot(target, "Target", color.green, linestyle=plot.linestyle_dotted)
3. Use for...in for Collections (March 2025)
// ✅ BEST: Use for...in (safe, clean, prevents freezing)
for element in myArray
// Process element directly
// ✅ With index when needed
for [index, element] in myArray
// Have both index and value
// ⚠️ FALLBACK: If traditional for needed, cache boundary
arrSize = array.size(myArray)
for i = 0 to arrSize - 1
// Process...
2025 Feature Checklist for Publication
- Uses
activeparameter for conditional inputs - Uses
linestylefor visual differentiation - Loops use
for...in(preferred) or cached boundaries - Ternary operators on single lines (no syntax errors)
- String lengths within 40,960 char limit
TradingView House Rules Compliance
Required Elements
For Indicators:
// built with PineScript Agents by TradersPost
//@version=6
//@description Comprehensive description of what the indicator does
indicator(title="Professional Indicator Name - Clear Description v1.0",
shorttitle="PRO IND",
overlay=true)
For Strategies (CRITICAL: Include alert annotation):
// built with PineScript Agents by TradersPost
//@version=6
//@description Comprehensive description of what the strategy does
strategy(title="Professional Strategy Name - Clear Description v1.0",
shorttitle="PRO STRAT",
overlay=true)
//@strategy_alert_message {{strategy.order.alert_message}}
// ============================================================================
// METADATA
// ============================================================================
// Author: Your Name / Username
// Version: 1.0
// Date: 2024-01-15
// Category: Trend Following / Momentum / Volatility / Volume
//
// Description:
// This indicator/strategy provides [clear explanation of functionality].
// It uses [main components/calculations] to generate [type of signals].
//
// Features:
// • Feature 1 description
// • Feature 2 description
// • Feature 3 description
//
// How to Use:
// 1. Add to your chart
// 2. Configure settings as needed
// 3. Look for [signal types]
// 4. Use in conjunction with [complementary analysis]
//
// ============================================================================
Prohibited Content
- No financial advice
- No promises of profitability
- No external links (except documentation)
- No contact information in code
- No obfuscated/minified code
- No requests for donations/tips
- No malicious code
Documentation Templates
IMPORTANT: Script Description Location
Pine Script descriptions should be written as comments at the top of the .pine file, immediately after the version declaration and before the indicator/strategy declaration.
1. Indicator Documentation (Place at TOP of .pine file)
//@version=6
// ============================================================================
// DOCUMENTATION - THIS GOES AT THE TOP OF YOUR PINE SCRIPT FILE
// ============================================================================
//
// INDICATOR OVERVIEW
// ==================
// This indicator identifies [specific market conditions] by analyzing
// [data sources used]. It is designed for [target audience/use case].
//
// CALCULATION METHOD
// ==================
// The indicator calculates:
// 1. [First calculation] using [formula/method]
// 2. [Second calculation] based on [inputs]
// 3. [Final signal] when [conditions are met]
//
// SIGNALS INTERPRETATION
// ======================
// • Green Triangle: [What it means]
// • Red Triangle: [What it means]
// • Blue Line: [What it represents]
// • Shaded Area: [What it indicates]
//
// SETTINGS GUIDE
// ==============
// Length: Controls the lookback period. Lower = more responsive, Higher = smoother
// Threshold: Sets sensitivity. Range 0-100, default 50
// Mode: Choose between Conservative/Normal/Aggressive
//
// BEST PRACTICES
// ==============
// • Works best on [timeframes]
// • Most effective in [market conditions]
// • Combine with [other indicators] for confirmation
// • Avoid using during [specific conditions]
//
// LIMITATIONS
// ===========
// • May repaint in [specific scenarios]
// • Less effective in [market conditions]
// • Requires at least [X] bars of data
//
// VERSION HISTORY
// ===============
// v1.0 (2024-01-15): Initial release
// v1.1 (2024-02-01): Added multi-timeframe support
// v1.2 (2024-03-01): Performance optimizations
//
// ============================================================================
indicator("Your Indicator Name", shorttitle="Short Name", overlay=true)
2. Strategy Documentation
// ============================================================================
// STRATEGY DOCUMENTATION
// ============================================================================
//
// STRATEGY LOGIC
// ==============
// Entry Conditions:
// • Long: [Specific conditions for long entry]
// • Short: [Specific conditions for short entry]
//
// Exit Conditions:
// • Take Profit: [TP logic]
// • Stop Loss: [SL logic]
// • Trailing Stop: [If applicable]
//
// RISK MANAGEMENT
// ===============
// • Position Size: [How it's calculated]
// • Maximum Risk: [Risk per trade]
// • Maximum Drawdown: [Expected DD]
//
// BACKTESTING NOTES
// =================
// • Tested Period: [Date range]
// • Best Performance: [Market/Timeframe]
// • Win Rate: [Approximate %]
// • Profit Factor: [Approximate value]
//
// ⚠️ DISCLAIMER
// =============
// Past performance does not guarantee future results. This strategy is
// for educational purposes only. Always conduct your own analysis and
// risk management before trading.
//
// ============================================================================
3. Input Documentation
// ============================================================================
// INPUTS WITH DETAILED DESCRIPTIONS
// ============================================================================
// Calculation Settings
length = input.int(
defval=20,
title="Calculation Length",
minval=1,
maxval=200,
group="Main Settings",
tooltip="The number of bars used in the calculation. Lower values (5-20) " +
"provide faster signals but more noise. Higher values (50-200) " +
"provide smoother, more reliable signals but with greater lag."
)
sensitivity = input.float(
defval=1.5,
title="Sensitivity",
minval=0.1,
maxval=5.0,
step=0.1,
group="Main Settings",
tooltip="Controls signal sensitivity. Lower values (0.5-1.0) generate " +
"fewer, more conservative signals. Higher values (2.0-5.0) generate " +
"more frequent signals. Default 1.5 is balanced."
)
// Display Settings
showSignals = input.bool(
defval=true,
title="Show Buy/Sell Signals",
group="Display Options",
tooltip="Toggle the display of entry/exit signals on the chart"
)
showInfoPanel = input.bool(
defval=true,
title="Show Information Panel",
group="Display Options",
tooltip="Display a panel with current indicator values and market statistics"
)
colorScheme = input.string(
defval="Professional",
title="Color Scheme",
options=["Professional", "Classic", "Dark", "Colorful"],
group="Display Options",
tooltip="Choose color scheme:\n" +
"• Professional: Blue/Red with transparency\n" +
"• Classic: Green/Red traditional\n" +
"• Dark: Optimized for dark mode\n" +
"• Colorful: High contrast colors"
)
SEO Optimization
1. Title Optimization
// Good titles for discoverability:
"RSI Divergence Scanner with Alerts - Multi Timeframe"
"Bollinger Bands Squeeze Detector Pro v2.0"
"Volume Profile with Support/Resistance Levels"
"Smart Money Concepts - Order Blocks & Fair Value Gaps"
// Include relevant keywords:
// - Indicator type (RSI, MACD, Moving Average)
// - Strategy type (Breakout, Trend Following, Mean Reversion)
// - Special features (Multi-TF, Alerts, Scanner)
// - Version number
2. Category Tags
// Relevant categories to include in description:
// Categories: Trend Analysis, Momentum, Volatility, Volume, Support/Resistance
// Tags: #RSI #Divergence #Alerts #MultiTimeframe #Scanner
// Markets: Forex, Crypto, Stocks, Futures, Indices
// Timeframes: Scalping (1m-5m), Intraday (15m-1h), Swing (4h-D), Position (W-M)
Publishing Checklist
Pre-Publication Review
- Code follows Pine Script v6 standards
- Strategies include
//@strategy_alert_message {{strategy.order.alert_message}}(after thestrategy()call) - No syntax errors or warnings
- All functions work as intended
- No repainting issues (or clearly documented)
- Performance optimized (loads quickly)
Documentation Complete
- Comprehensive description
- All inputs documented with tooltips
- Usage instructions clear
- Example configurations provided
- Limitations disclosed
- Version information included
Visual Presentation
- Professional color scheme
- Clean chart appearance
- Readable text sizes
- Mobile-friendly display
- Screenshot examples ready
Compliance Check
- No financial advice
- No performance guarantees
- No external promotions
- No contact information
- Disclaimer included
- Attribution for any borrowed code
Metadata Optimized
- SEO-friendly title
- Compelling description
- Relevant categories selected
- Appropriate tags added
- Version number included
Example Publication-Ready Script Header
//@version=6
//@description Advanced RSI divergence detector with multi-timeframe analysis and customizable alerts
indicator(title="RSI Divergence Pro - MTF Scanner with Alerts v2.0",
shorttitle="RSI Div Pro",
overlay=true,
max_labels_count=500)
// ╔═══════════════════════════════════════════════════════════════════════╗
// ║ RSI DIVERGENCE PRO v2.0 ║
// ║ Multi-Timeframe Scanner with Alerts ║
// ╠═══════════════════════════════════════════════════════════════════════╣
// ║ Author: TradingView_Username ║
// ║ Version: 2.0 ║
// ║ Release Date: January 15, 2024 ║
// ║ Category: Momentum Indicators ║
// ║ License: Mozilla Public License 2.0 ║
// ╠═══════════════════════════════════════════════════════════════════════╣
// ║ DESCRIPTION ║
// ╠═══════════════════════════════════════════════════════════════════════╣
// ║ This indicator identifies bullish and bearish RSI divergences across ║
// ║ multiple timeframes. It features: ║
// ║ ║
// ║ • Regular and hidden divergence detection ║
// ║ • Multi-timeframe confluence analysis ║
// ║ • Customizable alert system ║
// ║ • Visual divergence lines and labels ║
// ║ • Performance statistics table ║
// ║ ║
// ║ Perfect for: Swing traders, reversal traders, multi-TF analysts ║
// ╠═══════════════════════════════════════════════════════════════════════╣
// ║ HOW TO USE ║
// ╠═══════════════════════════════════════════════════════════════════════╣
// ║ 1. Add indicator to chart ║
// ║ 2. Configure RSI settings (default: 14) ║
// ║ 3. Set divergence sensitivity (1-5) ║
// ║ 4. Enable desired timeframes for scanning ║
// ║ 5. Look for divergence signals: ║
// ║ - Green lines/labels: Bullish divergence ║
// ║ - Red lines/labels: Bearish divergence ║
// ║ 6. Use confluence table for multi-TF confirmation ║
// ╠═══════════════════════════════════════════════════════════════════════╣
// ║ DISCLAIMER ║
// ╠═══════════════════════════════════════════════════════════════════════╣
// ║ This indicator is for educational purposes only. Past performance ║
// ║ does not guarantee future results. Always do your own analysis. ║
// ╚═══════════════════════════════════════════════════════════════════════╝
A well-published script with proper documentation gets more views, likes, and usage in the TradingView community.
FAQ
What does the pine-publisher skill do?
Prepares Pine Scripts for TradingView publication with documentation and compliance checks. Use when finalizing scripts for release.
How do I install pine-publisher?
Run npx skills add https://github.com/traderspost/pinescript-agents --skill pine-publisher in your project. The skills CLI detects the agents you use and copies the skill into the right folder. For Claude Code you can also place the skill folder at ~/.claude/skills/pine-publisher/ (personal) or .claude/skills/pine-publisher/ (project).
Which AI agents can use pine-publisher?
Any agent that supports the open Agent Skills format (a folder with a SKILL.md file), including Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, Windsurf, Cline, OpenCode and more.
Is pine-publisher safe to install?
No partner security audit is available yet. Skills can run commands and scripts, so read the SKILL.md and any bundled files before installing.
Who maintains pine-publisher?
It is published by traderspost in traderspost/pinescript-agents. It has 262 recorded installs.
More from traderspost/pinescript-agents
pine-developer
traderspost/pinescript-agents
Writes production-quality Pine Script v6 code following TradingView guidelines. Use when implementing indicators, strategies, or any Pine Script code.
pine-debugger
traderspost/pinescript-agents
Troubleshoots Pine Script issues and adds debugging capabilities. Use when scripts have errors or unexpected behavior.
pine-optimizer
traderspost/pinescript-agents
Optimizes Pine Script for performance and user experience. Use when improving speed, UI organization, or visual appeal.
pine-backtester
traderspost/pinescript-agents
Open the skill to read its SKILL.md instructions.
pine-visualizer
traderspost/pinescript-agents
Analyzes trading concepts and YouTube videos to extract Pine Script specifications. Use when planning indicators or analyzing video tutorials.
pine-manager
traderspost/pinescript-agents
Orchestrates complex Pine Script projects by coordinating multiple development phases. Use for complete trading systems.
Popular security skills
azure-compliance
microsoft/azure-skills
Run Azure compliance and security audits with azqr plus Key Vault expiration checks. Covers best-practice assessment, resource review, policy/compliance validation, and security posture checks. WHEN: compliance scan, security audit, BEFORE running azqr (compliance cli tool), Azure best practices, Key Vault expiration check, expired certificates, expiring secrets, orphaned resources, compliance assessment.
minimal-run-and-audit
lllllllama/rigorpilot-skills
Rigor Run skill for README-first deep learning repo reproduction. Use when the task is specifically to capture or normalize evidence from the selected smoke test or documented inference or evaluation command and write standardized reprooutputs/ files, including patch notes when repository files changed. Do not use for training execution, initial repo intake, generic environment setup, paper lookup, target selection, hidden scientific-meaning changes, or end-to-end orchestration by itself.
seo-audit
coreyhaines31/marketingskills
When the user wants to audit, review, or diagnose SEO issues on their site. Also use when the user mentions "SEO audit," "technical SEO," "why am I not ranking," "SEO issues," "on-page SEO," "meta tags review," "SEO health check," "my traffic dropped," "lost rankings," "not showing up in Google," "site isn't ranking," "Google update hit me," "page speed," "core web vitals," "crawl errors," "indexing issues," "stuck on page 2," "striking distance keywords," "title tag rewrite," "low CTR," "local SEO," "Google Business Profile," or "map pack." Use this even if the user just says something vague like "my SEO is bad" or "help with SEO" — start with an audit. For building pages at scale to target keywords, see programmatic-seo. For adding structured data, see schema. For AI search optimization, see ai-seo.
firebase-security-rules-auditor
firebase/agent-skills
Audits Firebase (Firestore, Cloud Storage) security rules for vulnerabilities, privilege escalation, role bypasses, create vs update inconsistencies, resource exhaustion, type safety, size limits, and hasOnly ownership checks. Use when auditing/reviewing rules, running red-team rule assessments, or scoring against auditor checklists. Don't use for Firebase CLI (login, deploy), Auth, Crashlytics, Remote Config, or database queries.
audit
pbakaus/impeccable
Run technical quality checks across accessibility, performance, theming, responsive design, and anti-patterns. Generates a scored report with P0-P3 severity ratings and actionable plan. Use when the user wants an accessibility check, performance audit, or technical quality review.
competitors
coreyhaines31/marketingskills
When the user wants to create competitor comparison or alternative pages for SEO and buyer-facing use. Also use when the user mentions 'alternative page,' 'vs page,' 'competitor comparison,' 'comparison page,' '[Product] vs [Product],' '[Product] alternative,' 'competitive landing pages,' 'how do we compare to X,' 'competitor teardown,' 'audit our competitor pages,' 'are our comparison pages out of date,' or 'competitive asset audit.' Use this for any content that positions your product against competitors. Covers four formats: singular alternative, plural alternatives, you vs competitor, and competitor vs competitor. For auditing existing claims (not researching competitors from scratch, which is competitor-profiling; not technical SEO on these pages, which is seo-audit), use the asset audit here. For internal battle cards and sales-specific competitor docs, see sales-enablement.