Token导航 LogoToken导航TokenDH.com
研究检索权限需确认github未标认证来源可访问clear审计通过

pine-debugger松调试器

Agent Skill

pine-debugger 用于查找、检索和筛选相关信息,适合在 Codex、Claude、Cursor、Gemini CLI 中需要根据关键词、任务场景或来源线索快速定位候选结果时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

总安装

3,398

周安装

143

GitHub Stars

83

下载量

1,190
CodexClaudeCursorGemini CLI

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

3

许可证

MIT

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:pine-debugger(松调试器)
来源仓库:https://github.com/traderspost/pinescript-agents
仓库路径:skills/pine-debugger
安装命令:
npx skills add https://github.com/traderspost/pinescript-agents --skill pine-debugger
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。不同来源提供的安装方式可能略有差异;本站展示可直接复制的安装命令,安装前请核对来源页面。

skills.shnpx skills
npx skills add https://github.com/traderspost/pinescript-agents --skill pine-debugger

简介

用于查找、检索和筛选相关信息。

  • 适合根据关键词、任务场景或来源线索快速定位候选结果。
  • 可结合来源仓库 README 核验具体用法,注意权限与维护状态。
  • 安装命令:npx skills add https://github.com/traderspost/pinescript-agents --skill pine-debugger
  • 建议确认是否会触发联网、命令执行或文件读写操作

SKILL.md

Pine Script Debugger

Specialized in adding debugging tools and troubleshooting Pine Script code in TradingView's often opaque environment.

Core Responsibilities

Debug Tool Implementation

  • Insert label.new() for value inspection
  • Create table-based variable monitors
  • Add conditional plotting for testing
  • Implement bar_index tracking
  • Create calculation flow visualizers

Issue Identification

  • Detect repainting problems
  • Find calculation errors
  • Identify na value propagation
  • Spot logic flow issues
  • Diagnose performance bottlenecks

TradingView Quirk Handling

  • Deal with undocumented behaviors
  • Work around platform limitations
  • Handle execution model oddities
  • Debug real-time vs historical differences

Common Pine Script Syntax Errors

CRITICAL: Line Continuation Issues

Pine Script does NOT support splitting expressions across multiple lines without proper syntax. This is a frequent source of errors.

WRONG - Will cause "end of line without line continuation" error:

// DON'T DO THIS - Ternary split across lines
dollarsText = priceDiff >= 0 ?
    str.format("+${0}", priceDiff) :
    str.format("-${0}", math.abs(priceDiff))

CORRECT - Keep ternary on one line:

// DO THIS - Entire ternary on one line
dollarsText = priceDiff >= 0 ? str.format("+${0}", priceDiff) : str.format("-${0}", math.abs(priceDiff))

Debugging Toolkit

1. Label-Based Debugging

// Debug label showing multiple values
if barstate.islast
    debugText = "RSI: " + str.tostring(rsiValue, "#.##") + "\n" + "MA: " + str.tostring(maValue, "#.##") + "\n" + "Signal: " + (buySignal ? "BUY" : "NEUTRAL")
    label.new(bar_index, high * 1.05, debugText, style=label.style_label_down, color=color.yellow, textcolor=color.black)

2. Table-Based Monitor

// Real-time variable monitor table
var table debugTable = table.new(position.top_right, 2, 10, bgcolor=color.black, border_width=1)

if barstate.islast
    table.cell(debugTable, 0, 0, "Variable", bgcolor=color.gray, text_color=color.white)
    table.cell(debugTable, 1, 0, "Value", bgcolor=color.gray, text_color=color.white)

    table.cell(debugTable, 0, 1, "Bar Index", text_color=color.white)
    table.cell(debugTable, 1, 1, str.tostring(bar_index), text_color=color.yellow)

    table.cell(debugTable, 0, 2, "Close Price", text_color=color.white)
    table.cell(debugTable, 1, 2, str.tostring(close, "#.####"), text_color=color.yellow)

    table.cell(debugTable, 0, 3, "Signal Active", text_color=color.white)
    table.cell(debugTable, 1, 3, signalActive ? "YES" : "NO", text_color=signalActive ? color.green : color.red)

3. Historical Value Tracker

// Track historical values for debugging
var array<float> histValues = array.new<float>()
var array<int> histBarIndex = array.new<int>()

if condition
    array.push(histValues, valueToTrack)
    array.push(histBarIndex, bar_index)
    if array.size(histValues) > 50  // Keep last 50 values
        array.shift(histValues)
        array.shift(histBarIndex)

// Display historical values
if barstate.islast and array.size(histValues) > 0
    for i = 0 to math.min(array.size(histValues) - 1, 10)
        label.new(array.get(histBarIndex, i), array.get(histValues, i), str.tostring(array.get(histValues, i)), style=label.style_circle, size=size.tiny)

4. Repainting Detector

// Detect potential repainting
var bool repaintDetected = false
var float previousValue = na

if not barstate.isrealtime
    if not na(previousValue) and previousValue != value[1]
        repaintDetected := true
    previousValue := value

if barstate.islast and repaintDetected
    label.new(bar_index, high * 1.1, "⚠️ REPAINTING DETECTED", style=label.style_label_down, color=color.red, textcolor=color.white)

5. Calculation Flow Tracer

// Trace calculation flow
var string calcFlow = ""

calcFlow := "Step 1: Input = " + str.tostring(input) + "\n"
intermediate1 = input * 2
calcFlow := calcFlow + "Step 2: x2 = " + str.tostring(intermediate1) + "\n"
intermediate2 = intermediate1 + 10
calcFlow := calcFlow + "Step 3: +10 = " + str.tostring(intermediate2) + "\n"
result = intermediate2 / 3
calcFlow := calcFlow + "Step 4: /3 = " + str.tostring(result)

if barstate.islast
    label.new(bar_index - 10, high, calcFlow, style=label.style_label_left, size=size.small)

Common Issues and Solutions

1. Na Value Propagation

// Debug na propagation
debugNa = "NA Debug:\n"
debugNa := debugNa + "Value1 is " + (na(value1) ? "NA" : "OK") + "\n"
debugNa := debugNa + "Value2 is " + (na(value2) ? "NA" : "OK") + "\n"
debugNa := debugNa + "Result is " + (na(result) ? "NA" : "OK")

2. Series vs Simple

// Debug series/simple type issues
// Will show compilation error if mixing types incorrectly
debugSeriesType = ta.sma(close, 10)  // series float
debugSimpleType = 10  // simple int
// debugWrong = debugSimpleType[1]  // Error: Cannot use [] on simple

3. Security Function Issues

// Debug security() calls
[htfValue, htfTime] = request.security(syminfo.tickerid, "D", [close, time])
if barstate.islast
    label.new(bar_index, high, "HTF Close: " + str.tostring(htfValue) + "\n" + "HTF Time: " + str.format_time(htfTime, "yyyy-MM-dd HH:mm"))

Debugging Workflow

  1. Add Initial Debug Points

- Insert labels at key calculation points - Add table for monitoring variables - Plot intermediate values

  1. Trace Execution

- Follow calculation flow - Check condition evaluations - Monitor state changes

  1. Identify Issues

- Look for unexpected na values - Check for repainting - Verify logic conditions

  1. Test Edge Cases

- First bars behavior - Real-time vs historical - Different market conditions

  1. Clean Up

- Comment out debug code - Or wrap in debug mode flag

Debug Mode Implementation

debugMode = input.bool(false, "Debug Mode", group="Debug")

// Conditional debugging
if debugMode
    // All debug code here
    label.new(...)
    table.cell(...)

TradingView's environment is opaque and changes frequently. Always test thoroughly and provide multiple debugging approaches.

适合场景

01

用户想查找某类 Agent Skill 时

02

需要根据任务场景推荐可安装能力包时

03

需要对比不同来源的安装命令和来源信息时

04

需要参考平台分布和安装热度时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

补充不同宿主或平台的使用分布数据

能力 5

展示第三方安全扫描或审计结果

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

Claude Code

30.65%
按下载量换算365

Antigravity

21.79%
按下载量换算259

Gemini CLI

17.76%
按下载量换算211

OpenCode

12.21%
按下载量换算145

Codex

8.03%
按下载量换算96

Cursor

3.28%
按下载量换算39

安全审计

Gen Agent Trust Hub

通过

Socket

通过

Snyk

通过

权限和风险

权限需确认

当前来源未能明确判断权限范围,默认进入异常复核队列。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。

来源信息

继续浏览同类 Skills