Archon Bridge
Unify portfolio data and route orders across multiple Indian brokers.
Installation
- Make sure Claude is on your device and in your terminal.
Skills load from
~/.claude/skills/when Claude Code starts up — so you need it on your machine first. If you don't have it yet, install it once with the command below, then runclaudein any terminal to verify.One-time setupnpm i -g @anthropic-ai/claude-codeAlready have it? Skip ahead.
- Paste into Claude Code or into your terminal.
This copies the whole skill folder into
~/.claude/skills/archon-bridge-taracodlabs/— the SKILL.md plus any scripts, reference docs, or templates the skill ships with. Safe default: works for every skill.Faster alternative (instruction-only skills)
Skips the clone and grabs only the SKILL.md file. Don't use this if the skill ships Python scripts, reference markdowns, or asset templates — they won't be downloaded and the skill will fail when it tries to load them.
Quick install (SKILL.md only)Sign up to copy - Restart Claude Code.
Quit and reopen Claude Code (or any other agent that loads from
~/.claude/skills/). New skills are picked up on startup. - Just ask Claude.
Skills auto-activate when your request matches the skill's description — no slash command needed. Trigger phrases live in the skill's own frontmatter; you can read them in the “What this skill does” section above.
Prefer to read the source first? Open on GitHub.
When Claude uses it
Unified portfolio + order routing across Zerodha, Upstox, Angel One
What this skill does
Archon Bridge
Unified broker bridge that aggregates portfolio data and normalizes order routing across multiple Indian brokers — Zerodha Kite, Upstox, and Angel One — into a single consistent interface.
When to Use
- User has accounts on multiple Indian brokers and wants a unified view
- User asks "what's my total portfolio across all brokers?"
- User wants to compare holdings or P&L across Zerodha and Upstox
- User needs a normalized order format regardless of which broker to use
- User asks Aiden to route an order to the broker with better margin or execution
How to Use
Aggregate portfolio from multiple brokers
# Requires env vars: KITE_API_KEY, KITE_ACCESS_TOKEN, UPSTOX_TOKEN
function Get-KiteHoldings {
$h = @{ "X-Kite-Version"="3"; "Authorization"="token $env:KITE_API_KEY:$env:KITE_ACCESS_TOKEN" }
(Invoke-RestMethod -Uri "https://api.kite.trade/portfolio/holdings" -Headers $h).data |
Select-Object @{N='symbol';E={$_.tradingsymbol}},
@{N='qty';E={$_.quantity}},
@{N='avg';E={$_.average_price}},
@{N='ltp';E={$_.last_price}},
@{N='broker';E={'Zerodha'}}
}
function Get-UpstoxHoldings {
$h = @{ "Authorization"="Bearer $env:UPSTOX_TOKEN"; "Accept"="application/json" }
(Invoke-RestMethod -Uri "https://api.upstox.com/v2/portfolio/long-term-holdings" -Headers $h).data |
Select-Object @{N='symbol';E={$_.tradingsymbol}},
@{N='qty';E={$_.quantity}},
@{N='avg';E={$_.average_price}},
@{N='ltp';E={$_.last_price}},
@{N='broker';E={'Upstox'}}
}
$all = @(Get-KiteHoldings) + @(Get-UpstoxHoldings)
$all | Sort-Object symbol | Format-Table -AutoSize
Calculate total portfolio value across brokers
$all = @(Get-KiteHoldings) + @(Get-UpstoxHoldings)
$total = ($all | ForEach-Object { $_.ltp * $_.qty } | Measure-Object -Sum).Sum
$cost = ($all | ForEach-Object { $_.avg * $_.qty } | Measure-Object -Sum).Sum
$pnl = $total - $cost
Write-Host "Total Value: ₹$([math]::Round($total,2))"
Write-Host "Total Cost: ₹$([math]::Round($cost,2))"
Write-Host "Total P&L: ₹$([math]::Round($pnl,2)) ($([math]::Round($pnl/$cost*100,2))%)"
Find duplicate holdings across brokers
$all = @(Get-KiteHoldings) + @(Get-UpstoxHoldings)
$all | Group-Object symbol | Where-Object Count -gt 1 |
ForEach-Object {
Write-Host "=== $($_.Name) ==="
$_.Group | Format-Table broker, qty, avg, ltp -AutoSize
}
Normalize order parameters across brokers
function New-ArchonOrder {
param(
[string]$Symbol,
[string]$Side, # BUY or SELL
[int]$Qty,
[string]$OrderType, # MARKET or LIMIT
[double]$Price = 0,
[string]$Broker # Zerodha or Upstox
)
if ($Broker -eq "Zerodha") {
return @{
tradingsymbol = $Symbol
exchange = "NSE"
transaction_type = $Side
order_type = $OrderType
quantity = $Qty
price = $Price
product = "CNC"
}
} elseif ($Broker -eq "Upstox") {
return @{
instrument_token = "NSE_EQ|$Symbol"
transaction_type = $Side
order_type = $OrderType
quantity = $Qty
price = $Price
product = "D"
validity = "DAY"
}
}
}
Examples
"Show my total equity portfolio across Zerodha and Upstox" → Call both broker APIs, merge holdings, calculate combined value and P&L.
"Do I hold Reliance in more than one broker?" → Aggregate all holdings, group by symbol, find symbols present in multiple broker accounts.
"Create a normalized order for buying 10 shares of HDFC Bank via Upstox"
→ Call New-ArchonOrder -Symbol "HDFCBANK" -Side "BUY" -Qty 10 -OrderType "MARKET" -Broker "Upstox".
Cautions
- Each broker's access token must be refreshed daily — check token validity before aggregation calls
- Broker APIs may use different symbol formats (e.g., NIFTY vs NIFTY50) — normalize symbols before cross-referencing
- Never auto-route orders across brokers without explicit user confirmation of the target broker
- P&L calculations use last traded price — may differ slightly from official broker statements due to corporate actions
Related skills
Contract & Proposal Writer
alirezarezvani
Generate professional contracts, proposals, and legal documents for multiple jurisdictions.
CFO Financial Advisor
alirezarezvani
Build financial models, analyze unit economics, and plan fundraising strategy for startups.
CHRO People Advisor
alirezarezvani
Build hiring plans, compensation frameworks, and organizational structures that scale.
Domain Name Brainstormer
Prat011
Generate creative domain name ideas and check availability across multiple extensions.