feat: add skills
This commit is contained in:
@@ -0,0 +1,34 @@
|
|||||||
|
---
|
||||||
|
name: mnie-cli
|
||||||
|
description: 'Use when an AI agent should operate the installed `mnie` command for a user: managing Mnie profiles, logging in, listing RPC methods, calling finance/account/market/order methods, handling passkey IDs, or explaining safe `mnie` usage in an environment where the CLI is already installed.'
|
||||||
|
---
|
||||||
|
|
||||||
|
# Mnie CLI
|
||||||
|
|
||||||
|
Use the installed `mnie` command. Do not assume access to the CLI source repository, build artifacts, or project-local scripts.
|
||||||
|
|
||||||
|
## Basics
|
||||||
|
|
||||||
|
- Confirm `mnie --help` if command syntax is uncertain.
|
||||||
|
- Use `mnie profile list` to inspect configured profiles when profile context is unclear.
|
||||||
|
- Use `--profile <name>` when the user specifies a profile; otherwise rely on the configured default profile.
|
||||||
|
- Use `--passkey-id <id>` when the target RPC method requires an SBI session connection.
|
||||||
|
- Pass method parameters as a single JSON string to `rpc call`.
|
||||||
|
- Preserve identifiers such as issue codes, order numbers, and passkey IDs as strings.
|
||||||
|
|
||||||
|
## Commands
|
||||||
|
|
||||||
|
Read `references/cli-commands.md` for concrete command examples.
|
||||||
|
Read `references/rpc-methods.md` when choosing an RPC method or forming params for `mnie rpc call`.
|
||||||
|
|
||||||
|
## Safety
|
||||||
|
|
||||||
|
- Do not invent direct commands such as `mnie account profile` unless `mnie --help` shows that syntax.
|
||||||
|
- Prefer read-only calls unless the user explicitly asks for a trade/order action.
|
||||||
|
- For live trading RPC methods, require explicit user confirmation and include `allowTrading: true` only when the user clearly requested submission.
|
||||||
|
- Do not fabricate API keys, profile names, passkey IDs, trade passwords, or server origins.
|
||||||
|
- Store profile origins as origins only. Do not include real endpoint paths in profile origins.
|
||||||
|
|
||||||
|
## Output
|
||||||
|
|
||||||
|
Return concise command results and the exact command shape used, but do not expose secrets such as API keys or access tokens.
|
||||||
@@ -0,0 +1,4 @@
|
|||||||
|
interface:
|
||||||
|
display_name: 'Mnie CLI'
|
||||||
|
short_description: 'Operate installed mnie safely'
|
||||||
|
default_prompt: 'Use $mnie-cli to run the installed mnie command for a Mnie task.'
|
||||||
@@ -0,0 +1,175 @@
|
|||||||
|
# Mnie CLI Commands
|
||||||
|
|
||||||
|
## Help
|
||||||
|
|
||||||
|
```bash
|
||||||
|
mnie --help
|
||||||
|
```
|
||||||
|
|
||||||
|
## Profiles
|
||||||
|
|
||||||
|
Add a profile:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
mnie profile add local \
|
||||||
|
--origin http://127.0.0.1:8787 \
|
||||||
|
--api-key mnie_xxx
|
||||||
|
```
|
||||||
|
|
||||||
|
List profiles:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
mnie profile list
|
||||||
|
```
|
||||||
|
|
||||||
|
Use a profile as default:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
mnie profile use local
|
||||||
|
```
|
||||||
|
|
||||||
|
`--origin` should be an origin only, such as `https://example.com` or `http://127.0.0.1:8787`.
|
||||||
|
|
||||||
|
## OAuth Login
|
||||||
|
|
||||||
|
```bash
|
||||||
|
mnie login \
|
||||||
|
--origin http://127.0.0.1:8787 \
|
||||||
|
--profile local
|
||||||
|
```
|
||||||
|
|
||||||
|
Optional flags:
|
||||||
|
|
||||||
|
- `--scopes "mcp read write trade"`
|
||||||
|
- `--storage file`
|
||||||
|
- `--storage keyring`
|
||||||
|
|
||||||
|
## RPC
|
||||||
|
|
||||||
|
List available RPC methods:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
mnie rpc methods --profile local
|
||||||
|
```
|
||||||
|
|
||||||
|
All known RPC method paths:
|
||||||
|
|
||||||
|
```text
|
||||||
|
session.profile
|
||||||
|
account.profile
|
||||||
|
account.assets.current
|
||||||
|
account.power.buyingPower
|
||||||
|
account.power.collateralRatio
|
||||||
|
account.positions.cash
|
||||||
|
account.positions.cashDetail
|
||||||
|
account.positions.cashForIssue
|
||||||
|
account.positions.margin
|
||||||
|
account.positions.marginDetail
|
||||||
|
account.positions.marginForIssue
|
||||||
|
account.positions.marginSummaryForIssue
|
||||||
|
account.positions.marginDetailsForIssue
|
||||||
|
account.positions.closeableMargin
|
||||||
|
account.positions.deliverableMargin
|
||||||
|
account.profitLoss.unrealized
|
||||||
|
market.issue.search
|
||||||
|
market.issue.suggest
|
||||||
|
market.issue.allowedPrices
|
||||||
|
market.issue.board
|
||||||
|
market.issue.pollBoard
|
||||||
|
market.issue.chart
|
||||||
|
market.issue.openOrders
|
||||||
|
market.issue.tradingInfo
|
||||||
|
market.index.major
|
||||||
|
market.overview
|
||||||
|
market.ranking.market
|
||||||
|
market.ranking.sector
|
||||||
|
market.ranking.sbi
|
||||||
|
news.list
|
||||||
|
watchlist.list
|
||||||
|
orders.inquiry.executionsToday
|
||||||
|
orders.inquiry.open
|
||||||
|
orders.inquiry.detail
|
||||||
|
orders.inquiry.tradeRecords
|
||||||
|
orders.cash.preOrder
|
||||||
|
orders.cash.estimate
|
||||||
|
orders.cash.place
|
||||||
|
orders.cash.estimateCorrection
|
||||||
|
orders.cash.estimateCorrectionConfirm
|
||||||
|
orders.cash.placeCorrection
|
||||||
|
orders.cash.estimateCancel
|
||||||
|
orders.cash.placeCancel
|
||||||
|
orders.margin.preOrderOpen
|
||||||
|
orders.margin.estimateOpen
|
||||||
|
orders.margin.open
|
||||||
|
orders.margin.preOrderClose
|
||||||
|
orders.margin.estimateClose
|
||||||
|
orders.margin.close
|
||||||
|
orders.margin.estimateCloseSummary
|
||||||
|
orders.margin.closeSummary
|
||||||
|
orders.margin.estimateSummary
|
||||||
|
orders.margin.placeSummary
|
||||||
|
orders.margin.preOrderActualDelivery
|
||||||
|
orders.margin.estimateActualDelivery
|
||||||
|
orders.margin.actualDelivery
|
||||||
|
orders.ifd.estimate
|
||||||
|
orders.ifd.place
|
||||||
|
orders.ifd.estimateCorrection
|
||||||
|
orders.ifd.placeCorrection
|
||||||
|
orders.ifd.estimateCancel
|
||||||
|
orders.ifd.placeCancel
|
||||||
|
orders.themeInvestment.list
|
||||||
|
orders.themeInvestment.estimate
|
||||||
|
orders.themeInvestment.place
|
||||||
|
orders.exchange.rate
|
||||||
|
orders.exchange.estimate
|
||||||
|
orders.exchange.place
|
||||||
|
```
|
||||||
|
|
||||||
|
For per-method params and examples, see `rpc-methods.md`.
|
||||||
|
|
||||||
|
Call a method without params:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
mnie rpc call account.profile \
|
||||||
|
--profile local \
|
||||||
|
--passkey-id sbi_xxx
|
||||||
|
```
|
||||||
|
|
||||||
|
Call a method with params:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
mnie rpc call market.issue.board \
|
||||||
|
'{"issueCode":"7203","market":"T"}' \
|
||||||
|
--profile local \
|
||||||
|
--passkey-id sbi_xxx
|
||||||
|
```
|
||||||
|
|
||||||
|
## Common Read-Only Calls
|
||||||
|
|
||||||
|
Account profile:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
mnie rpc call account.profile --profile local --passkey-id sbi_xxx
|
||||||
|
```
|
||||||
|
|
||||||
|
Market board:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
mnie rpc call market.issue.board \
|
||||||
|
'{"issueCode":"7203","market":"T"}' \
|
||||||
|
--profile local \
|
||||||
|
--passkey-id sbi_xxx
|
||||||
|
```
|
||||||
|
|
||||||
|
Open orders:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
mnie rpc call orders.inquiry.open \
|
||||||
|
'{"market":"T"}' \
|
||||||
|
--profile local \
|
||||||
|
--passkey-id sbi_xxx
|
||||||
|
```
|
||||||
|
|
||||||
|
## Trading Calls
|
||||||
|
|
||||||
|
Only use live placement/cancellation/correction methods after explicit user confirmation. Include `allowTrading: true` only for confirmed live submission.
|
||||||
@@ -0,0 +1,321 @@
|
|||||||
|
# RPC Method Usage
|
||||||
|
|
||||||
|
Use this shape:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
mnie rpc call <method> '<json-params>' --profile <profile> --passkey-id <passkey-id>
|
||||||
|
```
|
||||||
|
|
||||||
|
Omit `'<json-params>'` for methods with no params. Keep identifiers such as `issueCode`, `orderNumber`, `orderId`, and `passkey-id` as strings.
|
||||||
|
|
||||||
|
## Input And Output Types
|
||||||
|
|
||||||
|
`none` means omit the JSON params argument. A trailing `?` means the params object is optional.
|
||||||
|
|
||||||
|
| Method | Input | Output |
|
||||||
|
| ----------------------------------------- | ------------------------------------- | ------------------------------ |
|
||||||
|
| `session.profile` | none | `AccountProfile` |
|
||||||
|
| `account.profile` | none | `AccountProfile` |
|
||||||
|
| `account.assets.current` | none | `AccountAssetsValuations` |
|
||||||
|
| `account.power.buyingPower` | `AccountPowerOptions?` | `BuyingPower` |
|
||||||
|
| `account.power.collateralRatio` | `AccountPowerOptions?` | `BuyingPower` |
|
||||||
|
| `account.positions.cash` | `CashPositionOptions?` | `CashPositionList` |
|
||||||
|
| `account.positions.cashDetail` | `CashPositionOptions?` | `CashPositionList` |
|
||||||
|
| `account.positions.cashForIssue` | `IssueOptions` | `CashPositionList` |
|
||||||
|
| `account.positions.margin` | `MarginPositionOptions?` | `MarginPositionList` |
|
||||||
|
| `account.positions.marginDetail` | `MarginPositionOptions?` | `MarginPositionList` |
|
||||||
|
| `account.positions.marginForIssue` | `IssueOptions` | `MarginPositionList` |
|
||||||
|
| `account.positions.marginSummaryForIssue` | `IssueOptions` | `MarginPositionList` |
|
||||||
|
| `account.positions.marginDetailsForIssue` | `IssueOptions` | `MarginPositionList` |
|
||||||
|
| `account.positions.closeableMargin` | `MarginPositionOptions` | `MarginPositionList` |
|
||||||
|
| `account.positions.deliverableMargin` | `MarginPositionOptions` | `MarginPositionList` |
|
||||||
|
| `account.profitLoss.unrealized` | `ProfitLossOptions?` | `ProfitLossSummary` |
|
||||||
|
| `market.issue.search` | `IssueSearchOptions` | `IssueSearchResult` |
|
||||||
|
| `market.issue.suggest` | `IssueSearchOptions` | `IssueSearchResult` |
|
||||||
|
| `market.issue.allowedPrices` | `IssueOptions` | `Quote` |
|
||||||
|
| `market.issue.board` | `IssueOptions` | `Board` |
|
||||||
|
| `market.issue.pollBoard` | `MarketIssueBoardPollingOptions` | `AsyncIterableIterator<Board>` |
|
||||||
|
| `market.issue.chart` | `IssueChartOptions` | `IssueChart` |
|
||||||
|
| `market.issue.openOrders` | `IssueOptions` | `OrderList` |
|
||||||
|
| `market.issue.tradingInfo` | `BoardOptions` | `Board` |
|
||||||
|
| `market.index.major` | none | `MarketIndex[]` |
|
||||||
|
| `market.overview` | none | `DomesticMarket` |
|
||||||
|
| `market.ranking.market` | none | `Ranking` |
|
||||||
|
| `market.ranking.sector` | none | `Ranking` |
|
||||||
|
| `market.ranking.sbi` | none | `Ranking` |
|
||||||
|
| `news.list` | none | `NewsList` |
|
||||||
|
| `watchlist.list` | none | `Watchlist[]` |
|
||||||
|
| `orders.inquiry.executionsToday` | `OrderInquiryOptions?` | `OrderList` |
|
||||||
|
| `orders.inquiry.open` | `OrderInquiryOptions?` | `OrderList` |
|
||||||
|
| `orders.inquiry.detail` | `OrderDetailOptions` | `Order` |
|
||||||
|
| `orders.inquiry.tradeRecords` | `TradeRecordInquiryOptions` | `TradeRecordList` |
|
||||||
|
| `orders.cash.preOrder` | `CashOrderPreOrderOptions` | `StockOrderPreOrder` |
|
||||||
|
| `orders.cash.estimate` | `CashOrderOptions` | `OrderPreview` |
|
||||||
|
| `orders.cash.place` | `PlaceCashOrderOptions` | `OrderReceipt` |
|
||||||
|
| `orders.cash.estimateCorrection` | `OrderCorrectionOptions` | `OrderPreview` |
|
||||||
|
| `orders.cash.estimateCorrectionConfirm` | `OrderCorrectionOptions` | `OrderPreview` |
|
||||||
|
| `orders.cash.placeCorrection` | `PlaceOrderCorrectionOptions` | `OrderReceipt` |
|
||||||
|
| `orders.cash.estimateCancel` | `OrderCancelOptions` | `OrderPreview` |
|
||||||
|
| `orders.cash.placeCancel` | `PlaceOrderCancelOptions` | `OrderReceipt` |
|
||||||
|
| `orders.margin.preOrderOpen` | `MarginOpenOrderPreOrderOptions` | `StockOrderPreOrder` |
|
||||||
|
| `orders.margin.estimateOpen` | `MarginOpenOrderOptions` | `OrderPreview` |
|
||||||
|
| `orders.margin.open` | `PlaceMarginOpenOrderOptions` | `OrderReceipt` |
|
||||||
|
| `orders.margin.preOrderClose` | `MarginCloseOrderPreOrderOptions` | `StockOrderPreOrder` |
|
||||||
|
| `orders.margin.estimateClose` | `MarginCloseOrderOptions` | `OrderPreview` |
|
||||||
|
| `orders.margin.close` | `PlaceMarginCloseOrderOptions` | `OrderReceipt` |
|
||||||
|
| `orders.margin.estimateCloseSummary` | `MarginCloseOrderOptions` | `OrderPreview` |
|
||||||
|
| `orders.margin.closeSummary` | `PlaceMarginCloseOrderOptions` | `OrderReceipt` |
|
||||||
|
| `orders.margin.estimateSummary` | `MarginCloseSummaryOrderOptions` | `OrderPreview` |
|
||||||
|
| `orders.margin.placeSummary` | `PlaceMarginCloseSummaryOrderOptions` | `OrderReceipt` |
|
||||||
|
| `orders.margin.preOrderActualDelivery` | `ActualDeliveryOrderPreOrderOptions` | `StockOrderPreOrder` |
|
||||||
|
| `orders.margin.estimateActualDelivery` | `ActualDeliveryOrderOptions` | `OrderPreview` |
|
||||||
|
| `orders.margin.actualDelivery` | `PlaceActualDeliveryOrderOptions` | `OrderReceipt` |
|
||||||
|
| `orders.ifd.estimate` | `IfdOrderOptions` | `OrderPreview` |
|
||||||
|
| `orders.ifd.place` | `PlaceIfdOrderOptions` | `OrderReceipt` |
|
||||||
|
| `orders.ifd.estimateCorrection` | `OrderCorrectionOptions` | `OrderPreview` |
|
||||||
|
| `orders.ifd.placeCorrection` | `PlaceOrderCorrectionOptions` | `OrderReceipt` |
|
||||||
|
| `orders.ifd.estimateCancel` | `OrderCancelOptions` | `OrderPreview` |
|
||||||
|
| `orders.ifd.placeCancel` | `PlaceOrderCancelOptions` | `OrderReceipt` |
|
||||||
|
| `orders.themeInvestment.list` | `ThemeInvestmentPreOrderOptions` | `ThemeInvestmentList` |
|
||||||
|
| `orders.themeInvestment.estimate` | `ThemeInvestmentOrderOptions` | `OrderPreview` |
|
||||||
|
| `orders.themeInvestment.place` | `PlaceThemeInvestmentOrderOptions` | `OrderReceipt` |
|
||||||
|
| `orders.exchange.rate` | `ExchangeRateOptions` | `ExchangeRateInfo` |
|
||||||
|
| `orders.exchange.estimate` | `ExchangeOrderOptions` | `ExchangeOrderPreview` |
|
||||||
|
| `orders.exchange.place` | `PlaceExchangeOrderOptions` | `ExchangeOrderReceipt` |
|
||||||
|
|
||||||
|
## Common Input Shapes
|
||||||
|
|
||||||
|
These are the most common params objects agents need to construct. For exact field definitions, inspect the SDK/type reference that ships with the target environment.
|
||||||
|
|
||||||
|
```ts
|
||||||
|
type PagingOptions = { index?: number; limit?: number }
|
||||||
|
type DateRangeOptions = { from?: string; to?: string }
|
||||||
|
type IssueOptions = { issueCode: string; market: MarketCode }
|
||||||
|
type IssueSearchOptions = { query: string; market: MarketCode; limit?: number }
|
||||||
|
type AccountPowerOptions = { includeMarginAccount?: boolean }
|
||||||
|
type ProfitLossOptions = { market?: MarketCode }
|
||||||
|
type CashPositionOptions = PagingOptions & {
|
||||||
|
issueCode?: string
|
||||||
|
market?: MarketCode
|
||||||
|
accountType?: AccountType
|
||||||
|
}
|
||||||
|
type MarginPositionOptions = PagingOptions & {
|
||||||
|
issueCode?: string
|
||||||
|
market?: MarketCode
|
||||||
|
side?: MarginTradeSide
|
||||||
|
accountType?: AccountType
|
||||||
|
}
|
||||||
|
type OrderInquiryOptions = PagingOptions &
|
||||||
|
DateRangeOptions & {
|
||||||
|
issueCode?: string
|
||||||
|
market?: MarketCode
|
||||||
|
status?: OrderStatus
|
||||||
|
}
|
||||||
|
type OrderDetailOptions = {
|
||||||
|
orderNumber?: string
|
||||||
|
orderId?: string
|
||||||
|
issueCode?: string
|
||||||
|
market: MarketCode
|
||||||
|
}
|
||||||
|
type TradeRecordInquiryOptions = OrderInquiryOptions & {
|
||||||
|
accountType?: AccountType
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
Order option types are intentionally broad. Prefer pre-order and estimate methods first; use the resulting constraints to fill live order payloads.
|
||||||
|
|
||||||
|
## Session
|
||||||
|
|
||||||
|
```bash
|
||||||
|
mnie rpc call session.profile --profile local --passkey-id sbi_xxx
|
||||||
|
```
|
||||||
|
|
||||||
|
## Account
|
||||||
|
|
||||||
|
```bash
|
||||||
|
mnie rpc call account.profile --profile local --passkey-id sbi_xxx
|
||||||
|
mnie rpc call account.assets.current --profile local --passkey-id sbi_xxx
|
||||||
|
mnie rpc call account.power.buyingPower '{}' --profile local --passkey-id sbi_xxx
|
||||||
|
mnie rpc call account.power.collateralRatio '{"includeMarginAccount":true}' --profile local --passkey-id sbi_xxx
|
||||||
|
```
|
||||||
|
|
||||||
|
Positions:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
mnie rpc call account.positions.cash '{}' --profile local --passkey-id sbi_xxx
|
||||||
|
mnie rpc call account.positions.cashDetail '{}' --profile local --passkey-id sbi_xxx
|
||||||
|
mnie rpc call account.positions.cashForIssue '{"issueCode":"7203","market":"T"}' --profile local --passkey-id sbi_xxx
|
||||||
|
mnie rpc call account.positions.margin '{}' --profile local --passkey-id sbi_xxx
|
||||||
|
mnie rpc call account.positions.marginDetail '{}' --profile local --passkey-id sbi_xxx
|
||||||
|
mnie rpc call account.positions.marginForIssue '{"issueCode":"7203","market":"T"}' --profile local --passkey-id sbi_xxx
|
||||||
|
mnie rpc call account.positions.marginSummaryForIssue '{"issueCode":"7203","market":"T"}' --profile local --passkey-id sbi_xxx
|
||||||
|
mnie rpc call account.positions.marginDetailsForIssue '{"issueCode":"7203","market":"T"}' --profile local --passkey-id sbi_xxx
|
||||||
|
mnie rpc call account.positions.closeableMargin '{"issueCode":"7203","market":"T"}' --profile local --passkey-id sbi_xxx
|
||||||
|
mnie rpc call account.positions.deliverableMargin '{"issueCode":"7203","market":"T"}' --profile local --passkey-id sbi_xxx
|
||||||
|
```
|
||||||
|
|
||||||
|
Profit and loss:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
mnie rpc call account.profitLoss.unrealized '{}' --profile local --passkey-id sbi_xxx
|
||||||
|
mnie rpc call account.profitLoss.unrealized '{"market":"T"}' --profile local --passkey-id sbi_xxx
|
||||||
|
```
|
||||||
|
|
||||||
|
Common optional filters for list-style account calls:
|
||||||
|
|
||||||
|
```json
|
||||||
|
{ "index": 0, "limit": 100, "issueCode": "7203", "market": "T", "accountType": "specific" }
|
||||||
|
```
|
||||||
|
|
||||||
|
## Market
|
||||||
|
|
||||||
|
Issue search and quotes:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
mnie rpc call market.issue.search '{"query":"7203","market":"T","limit":10}' --profile local --passkey-id sbi_xxx
|
||||||
|
mnie rpc call market.issue.suggest '{"query":"トヨタ","market":"T","limit":10}' --profile local --passkey-id sbi_xxx
|
||||||
|
mnie rpc call market.issue.allowedPrices '{"issueCode":"7203","market":"T"}' --profile local --passkey-id sbi_xxx
|
||||||
|
mnie rpc call market.issue.board '{"issueCode":"7203","market":"T"}' --profile local --passkey-id sbi_xxx
|
||||||
|
mnie rpc call market.issue.chart '{"issueCode":"7203","market":"T","period":"day","count":120}' --profile local --passkey-id sbi_xxx
|
||||||
|
mnie rpc call market.issue.openOrders '{"issueCode":"7203","market":"T"}' --profile local --passkey-id sbi_xxx
|
||||||
|
mnie rpc call market.issue.tradingInfo '{"issueCode":"7203","market":"T","side":"cashBuy"}' --profile local --passkey-id sbi_xxx
|
||||||
|
```
|
||||||
|
|
||||||
|
`market.issue.pollBoard` is a polling/iterator method. Prefer `market.issue.board` for one-shot CLI output unless `mnie rpc call market.issue.pollBoard ...` is known to serialize streaming results in the target environment.
|
||||||
|
|
||||||
|
Indexes, overview, rankings:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
mnie rpc call market.index.major --profile local --passkey-id sbi_xxx
|
||||||
|
mnie rpc call market.overview --profile local --passkey-id sbi_xxx
|
||||||
|
mnie rpc call market.ranking.market --profile local --passkey-id sbi_xxx
|
||||||
|
mnie rpc call market.ranking.sector --profile local --passkey-id sbi_xxx
|
||||||
|
mnie rpc call market.ranking.sbi --profile local --passkey-id sbi_xxx
|
||||||
|
```
|
||||||
|
|
||||||
|
## News And Watchlist
|
||||||
|
|
||||||
|
```bash
|
||||||
|
mnie rpc call news.list --profile local --passkey-id sbi_xxx
|
||||||
|
mnie rpc call watchlist.list --profile local --passkey-id sbi_xxx
|
||||||
|
```
|
||||||
|
|
||||||
|
## Order Inquiry
|
||||||
|
|
||||||
|
```bash
|
||||||
|
mnie rpc call orders.inquiry.executionsToday '{}' --profile local --passkey-id sbi_xxx
|
||||||
|
mnie rpc call orders.inquiry.open '{}' --profile local --passkey-id sbi_xxx
|
||||||
|
mnie rpc call orders.inquiry.detail '{"orderNumber":"123456","orderId":"abcdef","issueCode":"AAPL","market":"NASDAQ"}' --profile local --passkey-id sbi_xxx
|
||||||
|
mnie rpc call orders.inquiry.tradeRecords '{"from":"2026-01-01","to":"2026-01-31","market":"NASDAQ","accountType":"specific"}' --profile local --passkey-id sbi_xxx
|
||||||
|
```
|
||||||
|
|
||||||
|
Common inquiry filters:
|
||||||
|
|
||||||
|
```json
|
||||||
|
{
|
||||||
|
"index": 0,
|
||||||
|
"limit": 100,
|
||||||
|
"from": "2026-01-01",
|
||||||
|
"to": "2026-01-31",
|
||||||
|
"issueCode": "7203",
|
||||||
|
"market": "T",
|
||||||
|
"status": "open"
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
## Cash Orders
|
||||||
|
|
||||||
|
Pre-order and estimate are non-submitting:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
mnie rpc call orders.cash.preOrder '{"issueCode":"7203","market":"T","side":"buy","accountType":"specific"}' --profile local --passkey-id sbi_xxx
|
||||||
|
mnie rpc call orders.cash.estimate '{"issueCode":"7203","market":"T","side":"buy","quantity":100,"accountType":"specific","kind":"market"}' --profile local --passkey-id sbi_xxx
|
||||||
|
mnie rpc call orders.cash.estimateCorrection '{"orderNumber":"123456","orderId":"abcdef","market":"T","quantity":100,"price":2500}' --profile local --passkey-id sbi_xxx
|
||||||
|
mnie rpc call orders.cash.estimateCorrectionConfirm '{"orderNumber":"123456","orderId":"abcdef","market":"T","quantity":100,"price":2500}' --profile local --passkey-id sbi_xxx
|
||||||
|
mnie rpc call orders.cash.estimateCancel '{"orderNumber":"123456","orderId":"abcdef"}' --profile local --passkey-id sbi_xxx
|
||||||
|
```
|
||||||
|
|
||||||
|
Live cash order actions require explicit user confirmation and `allowTrading:true`:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
mnie rpc call orders.cash.place '{"issueCode":"7203","market":"T","side":"buy","quantity":100,"accountType":"specific","kind":"market","allowTrading":true}' --profile local --passkey-id sbi_xxx
|
||||||
|
mnie rpc call orders.cash.placeCorrection '{"orderNumber":"123456","orderId":"abcdef","market":"T","quantity":100,"price":2500,"allowTrading":true}' --profile local --passkey-id sbi_xxx
|
||||||
|
mnie rpc call orders.cash.placeCancel '{"orderNumber":"123456","orderId":"abcdef","allowTrading":true}' --profile local --passkey-id sbi_xxx
|
||||||
|
```
|
||||||
|
|
||||||
|
## Margin Orders
|
||||||
|
|
||||||
|
Pre-order and estimate are non-submitting:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
mnie rpc call orders.margin.preOrderOpen '{"issueCode":"7203","market":"T","side":"buy","accountType":"specific"}' --profile local --passkey-id sbi_xxx
|
||||||
|
mnie rpc call orders.margin.estimateOpen '{"issueCode":"7203","market":"T","side":"buy","quantity":100,"accountType":"specific","kind":"market","marginTradeType":"standard"}' --profile local --passkey-id sbi_xxx
|
||||||
|
mnie rpc call orders.margin.preOrderClose '{"issueCode":"7203","market":"T","side":"sell","accountType":"specific"}' --profile local --passkey-id sbi_xxx
|
||||||
|
mnie rpc call orders.margin.estimateClose '{"issueCode":"7203","market":"T","side":"sell","quantity":100,"accountType":"specific","kind":"market","marginCloseTradeType":"standard"}' --profile local --passkey-id sbi_xxx
|
||||||
|
mnie rpc call orders.margin.estimateCloseSummary '{"issueCode":"7203","market":"T","side":"sell","quantity":100,"accountType":"specific","kind":"market"}' --profile local --passkey-id sbi_xxx
|
||||||
|
mnie rpc call orders.margin.estimateSummary '{"issueCode":"7203","market":"T","side":"sell","quantity":100,"accountType":"specific","kind":"market"}' --profile local --passkey-id sbi_xxx
|
||||||
|
mnie rpc call orders.margin.preOrderActualDelivery '{"issueCode":"7203","market":"T","side":"sell","accountType":"specific"}' --profile local --passkey-id sbi_xxx
|
||||||
|
mnie rpc call orders.margin.estimateActualDelivery '{"issueCode":"7203","market":"T","side":"sell","quantity":100,"accountType":"specific"}' --profile local --passkey-id sbi_xxx
|
||||||
|
```
|
||||||
|
|
||||||
|
Live margin actions require explicit user confirmation and `allowTrading:true`:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
mnie rpc call orders.margin.open '{"issueCode":"7203","market":"T","side":"buy","quantity":100,"accountType":"specific","kind":"market","marginTradeType":"standard","allowTrading":true}' --profile local --passkey-id sbi_xxx
|
||||||
|
mnie rpc call orders.margin.close '{"issueCode":"7203","market":"T","side":"sell","quantity":100,"accountType":"specific","kind":"market","marginCloseTradeType":"standard","allowTrading":true}' --profile local --passkey-id sbi_xxx
|
||||||
|
mnie rpc call orders.margin.closeSummary '{"issueCode":"7203","market":"T","side":"sell","quantity":100,"accountType":"specific","kind":"market","allowTrading":true}' --profile local --passkey-id sbi_xxx
|
||||||
|
mnie rpc call orders.margin.placeSummary '{"issueCode":"7203","market":"T","side":"sell","quantity":100,"accountType":"specific","kind":"market","allowTrading":true}' --profile local --passkey-id sbi_xxx
|
||||||
|
mnie rpc call orders.margin.actualDelivery '{"issueCode":"7203","market":"T","side":"sell","quantity":100,"accountType":"specific","allowTrading":true}' --profile local --passkey-id sbi_xxx
|
||||||
|
```
|
||||||
|
|
||||||
|
## IFD Orders
|
||||||
|
|
||||||
|
Estimate and cancellation estimate are non-submitting:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
mnie rpc call orders.ifd.estimate '{"issueCode":"7203","market":"T","side":"buy","quantity":100,"accountType":"specific","kind":"market"}' --profile local --passkey-id sbi_xxx
|
||||||
|
mnie rpc call orders.ifd.estimateCorrection '{"orderNumber":"123456","orderId":"abcdef","market":"T","quantity":100,"price":2500}' --profile local --passkey-id sbi_xxx
|
||||||
|
mnie rpc call orders.ifd.estimateCancel '{"orderNumber":"123456","orderId":"abcdef"}' --profile local --passkey-id sbi_xxx
|
||||||
|
```
|
||||||
|
|
||||||
|
Live IFD actions require explicit user confirmation and `allowTrading:true`:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
mnie rpc call orders.ifd.place '{"issueCode":"7203","market":"T","side":"buy","quantity":100,"accountType":"specific","kind":"market","allowTrading":true}' --profile local --passkey-id sbi_xxx
|
||||||
|
mnie rpc call orders.ifd.placeCorrection '{"orderNumber":"123456","orderId":"abcdef","market":"T","quantity":100,"price":2500,"allowTrading":true}' --profile local --passkey-id sbi_xxx
|
||||||
|
mnie rpc call orders.ifd.placeCancel '{"orderNumber":"123456","orderId":"abcdef","allowTrading":true}' --profile local --passkey-id sbi_xxx
|
||||||
|
```
|
||||||
|
|
||||||
|
## Theme Investment Orders
|
||||||
|
|
||||||
|
```bash
|
||||||
|
mnie rpc call orders.themeInvestment.list '{"themeId":"theme_xxx"}' --profile local --passkey-id sbi_xxx
|
||||||
|
mnie rpc call orders.themeInvestment.estimate '{"themeId":"theme_xxx","side":"buy","accountType":"specific","orderAmount":10000}' --profile local --passkey-id sbi_xxx
|
||||||
|
```
|
||||||
|
|
||||||
|
Live theme investment placement requires explicit user confirmation and `allowTrading:true`:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
mnie rpc call orders.themeInvestment.place '{"themeId":"theme_xxx","side":"buy","accountType":"specific","orderAmount":10000,"allowTrading":true}' --profile local --passkey-id sbi_xxx
|
||||||
|
```
|
||||||
|
|
||||||
|
## Exchange Orders
|
||||||
|
|
||||||
|
Rate and estimate are non-submitting:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
mnie rpc call orders.exchange.rate '{"side":"buy","currency":"USD"}' --profile local --passkey-id sbi_xxx
|
||||||
|
mnie rpc call orders.exchange.estimate '{"side":"buy","currency":"USD","quantity":100,"accountKind":"GENERAL"}' --profile local --passkey-id sbi_xxx
|
||||||
|
```
|
||||||
|
|
||||||
|
Live exchange placement requires explicit user confirmation and `allowTrading:true`:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
mnie rpc call orders.exchange.place '{"side":"buy","currency":"USD","quantity":100,"accountKind":"GENERAL","allowTrading":true}' --profile local --passkey-id sbi_xxx
|
||||||
|
```
|
||||||
|
|
||||||
|
## Notes For Agents
|
||||||
|
|
||||||
|
- Use `mnie rpc methods --profile <profile>` when the installed server may expose a different method set.
|
||||||
|
- Use the examples as shapes, not guaranteed complete order payloads. If an order method rejects params, inspect the error and ask for the missing order-specific fields rather than guessing.
|
||||||
|
- Prefer `estimate*` and `preOrder*` methods before any `place*`, `open`, `close`, `actualDelivery`, or `placeCancel` method.
|
||||||
Reference in New Issue
Block a user