🎁 Get the FREE AI Skills Starter Guide β€” Subscribe β†’
BytesAgainBytesAgain
πŸ¦€ ClawHub

tmrland-personal-demo

by @cpy1990

TMR Land personal agent for an AI business marketplace. Use when: (1) searching for AI/data businesses, (2) publishing purchase intentions, (3) placing and m...

Versionv1.0.5
Downloads1,185
TERMINAL
clawhub install tmrland-personal-demo

πŸ“– About This Skill


name: tmrland-personal description: "TMR Land personal agent for an AI business marketplace. Use when: (1) searching for AI/data businesses, (2) publishing purchase intentions, (3) placing and managing escrow orders, (4) evaluating business credit scores, (5) browsing Grand Apparatus predictions." homepage: https://tmrland.com metadata: {"clawdbot":{"emoji":"πŸ›’","requires":{"bins":["node"],"env":["TMR_API_KEY"]},"primaryEnv":"TMR_API_KEY"}}

TMR Land β€” Personal Skill

Connect your agent to TMR Land, a bilingual (zh/en) AI business marketplace. As a personal user you search businesses, publish Intentions, place escrow orders, and evaluate business quality via credit scoring.

Setup

Set TMR_API_KEY β€” create one via POST /api/v1/api-keys with role: "personal".

Optionally set TMR_BASE_URL (default: https://tmrland.com/api/v1).

Scripts

# Search active businesses
node {baseDir}/scripts/search-businesses.mjs --limit 10

Create an intention (structured need)

node {baseDir}/scripts/create-intention.mjs --content "Need a fine-tuned Chinese NLP model for sentiment analysis" [--locale zh]

List your intentions

node {baseDir}/scripts/list-intentions.mjs [--limit N]

Get intention details

node {baseDir}/scripts/get-intention.mjs

Publish a draft intention

node {baseDir}/scripts/publish-intention.mjs

Cancel an intention

node {baseDir}/scripts/cancel-intention.mjs

One-shot search (create + profile + match + return results)

node {baseDir}/scripts/quick-search.mjs --content "Need an NLP model for sentiment analysis"

Trigger multi-path matching (rules + BM25 + vector + RRF fusion)

node {baseDir}/scripts/trigger-match.mjs

Check matching status (pending/running/completed/failed)

node {baseDir}/scripts/match-status.mjs

Get matched business candidates

node {baseDir}/scripts/get-matches.mjs

Start negotiations with matched businesses

node {baseDir}/scripts/start-negotiation.mjs --intention --businesses

List your negotiation sessions

node {baseDir}/scripts/list-negotiations.mjs [--intention ]

View/send messages in a negotiation

node {baseDir}/scripts/negotiation-messages.mjs [--send "message text"]

Accept a final_deal proposal (creates order)

node {baseDir}/scripts/accept-deal.mjs

Reject a proposal

node {baseDir}/scripts/reject-deal.mjs

Cancel a negotiation session

node {baseDir}/scripts/cancel-negotiation.mjs

Check order status

node {baseDir}/scripts/order-status.mjs

List all your orders

node {baseDir}/scripts/list-orders.mjs [--limit N]

Cancel an order (before payment)

node {baseDir}/scripts/cancel-order.mjs

Pay for an order (escrow)

node {baseDir}/scripts/pay-order.mjs [--currency USD|USDC]

View order messages

node {baseDir}/scripts/get-messages.mjs

Send a message in an order

node {baseDir}/scripts/send-message.mjs --content "message text"

Accept delivery (releases escrow, moves to pending_rating)

node {baseDir}/scripts/accept-delivery.mjs

Request revision (sends order back to business for rework)

node {baseDir}/scripts/request-revision.mjs --feedback "Please fix..."

Submit a review

node {baseDir}/scripts/submit-review.mjs --order --rating <1-5> [--comment "..."]

Check wallet balances

node {baseDir}/scripts/get-wallet.mjs

Get a specific business profile

node {baseDir}/scripts/get-business.mjs

Get a business's A2A agent card

node {baseDir}/scripts/get-agent-card.mjs

Update a draft intention

node {baseDir}/scripts/update-intention.mjs [--title "..."] [--description "..."]

Delete an intention

node {baseDir}/scripts/delete-intention.mjs

Re-describe intention and re-match

node {baseDir}/scripts/redescribe-intention.mjs --content "..." [--locale zh]

Get negotiation session details

node {baseDir}/scripts/get-negotiation.mjs

Mark negotiation messages as read

node {baseDir}/scripts/mark-negotiation-read.mjs

Withdraw a proposal

node {baseDir}/scripts/withdraw-proposal.mjs

Request revision on a delivery

node {baseDir}/scripts/request-revision.mjs --feedback "Please fix..."

Get order receipt

node {baseDir}/scripts/get-receipt.mjs

Open a dispute on an order

node {baseDir}/scripts/create-dispute.mjs --reason "..." [--refund-type full|partial] [--refund-amount N]

Charge wallet (add funds)

node {baseDir}/scripts/charge-wallet.mjs --amount 100 [--currency USD]

Withdraw from wallet

node {baseDir}/scripts/withdraw-wallet.mjs --amount 50 [--currency USD]

List wallet transactions

node {baseDir}/scripts/list-transactions.mjs [--limit N]

Submit KYC verification

node {baseDir}/scripts/submit-kyc.mjs --name "..." --id-type passport --id-number "..."

List order message conversations

node {baseDir}/scripts/list-conversations.mjs [--limit N]

Mark order messages as read

node {baseDir}/scripts/mark-messages-read.mjs

List notifications

node {baseDir}/scripts/list-notifications.mjs

Mark a notification as read

node {baseDir}/scripts/mark-notification-read.mjs

Mark all notifications as read

node {baseDir}/scripts/mark-all-read.mjs

Get reviews for a business

node {baseDir}/scripts/get-reviews.mjs

Get reputation scores for a business

node {baseDir}/scripts/get-reputation.mjs

Get review leaderboard

node {baseDir}/scripts/get-leaderboard.mjs

List Grand Apparatus questions

node {baseDir}/scripts/list-questions.mjs [--limit N]

Vote on a Grand Apparatus answer

node {baseDir}/scripts/vote-answer.mjs --direction like|dislike

Get credit summary for a business

node {baseDir}/scripts/get-credit.mjs

Get credit profile (agent-friendly vector data)

node {baseDir}/scripts/get-credit-profile.mjs

Get credit review dimension details

node {baseDir}/scripts/get-credit-reviews.mjs

Get credit dispute dimension details

node {baseDir}/scripts/get-credit-disputes.mjs

List contracts

node {baseDir}/scripts/list-contracts.mjs [--limit N]

Get KYC verification status

node {baseDir}/scripts/get-kyc.mjs

Get unread notification count

node {baseDir}/scripts/unread-count.mjs

Get reviews for a specific order

node {baseDir}/scripts/get-order-reviews.mjs

Get a specific contract

node {baseDir}/scripts/get-contract.mjs

Get question answer leaderboard

node {baseDir}/scripts/get-question-leaderboard.mjs

List disputes

node {baseDir}/scripts/list-disputes.mjs [--limit N]

Personal Workflow

1. Register & fund β€” Create account, complete KYC, charge wallet 2. Publish intention β€” Describe your need via --content 3. Match β€” Trigger multi-path business matching 4. Review candidates β€” Check match scores, reputation, credit profiles, Apparatus track records 5. Negotiate β€” Start negotiation sessions with candidate businesses, exchange messages, review proposals 6. Accept deal β€” Accept a final_deal proposal, which creates a contract and order 7. Pay β€” Debits funds from your wallet for escrow (USD or USDC) 8. Communicate β€” Message the business via order chat 9. Accept delivery β€” Review deliverables, accept (releases escrow) or request revision 10. Review β€” Rate the business during the pending_rating window

Agent Behavioral Guide

Parameter Autonomy Levels

Three levels define how the agent handles each parameter:

  • AUTO β€” Agent can infer directly without asking (IDs, locale, pagination).
  • CONFIRM β€” Agent may draft a value but MUST show it to the user for approval before submitting.
  • ASK β€” Agent MUST ask the user directly. Never guess or generate.
  • | Operation | Parameter | Level | Notes | |---|---|---|---| | create_intention | content | CONFIRM | Agent may draft from conversation context; show draft before submitting | | create_intention | locale | AUTO | Detect from content language (zh/en) | | quick_search | content | CONFIRM | Same as create_intention content | | publish_intention | intention_id | AUTO | Use ID from previous create step | | update_intention | title, description | CONFIRM | Agent may suggest edits | | redescribe_intention | content | CONFIRM | Agent may draft; warn about side effects first | | redescribe_intention | locale | AUTO | Detect from content language | | delete_intention | intention_id | ASK | Must confirm deletion intent | | trigger_matching | intention_id | AUTO | Use ID from current workflow | | start_negotiations | business_ids | ASK | Present match candidates; user selects | | send_negotiation_message | content | CONFIRM | Agent may draft; user confirms | | accept_deal | session_id | ASK | Must explain consequences and confirm | | reject_deal | session_id | ASK | Must confirm rejection | | cancel_negotiation | session_id | ASK | Must confirm cancellation | | pay_order | currency | ASK | Must ask USD or USDC | | pay_order | order_id | AUTO | Use ID from deal acceptance | | send_message | content | CONFIRM | Agent may draft; user confirms | | accept_delivery | order_id | ASK | Must explain escrow release and confirm | | submit_review | rating | ASK | Never generate a rating | | submit_review | comment | CONFIRM | Agent may suggest; user confirms | | cancel_order | order_id | ASK | Must confirm cancellation | | cancel_intention | intention_id | ASK | Must confirm cancellation |

    Destructive Operations

    These operations have significant side effects. The agent MUST warn the user and obtain explicit confirmation before calling.

    | Operation | Side Effects | Required Confirmation | |---|---|---| | accept_delivery | ⚠️ IRREVERSIBLE. Releases escrowed funds to business. Moves order to pending_rating. Cannot be undone except via dispute. | "Are you sure you want to accept delivery and release [amount] [currency] to [business]?" | | accept_deal | ⚠️ IRREVERSIBLE. Creates a binding contract and order. Cancels ALL other active negotiations for this intention. | "Accepting creates an order for [amount] with [business] and cancels all other negotiations. Proceed?" | | pay_order | Debits funds from wallet for escrow. Funds held until delivery confirmation or dispute resolution. | "This will debit [amount] [currency] from your wallet. Pay with USD or USDC?" | | redescribe_intention | ⚠️ DESTRUCTIVE. Cancels all active negotiations. Replaces content and triggers re-matching. Previous negotiation history lost. | "This will cancel all current negotiations and start fresh. All negotiation progress will be lost. Continue?" | | delete_intention | ⚠️ DESTRUCTIVE. Permanently deletes intention and all associated data. | "This will permanently delete this intention. This cannot be undone. Confirm?" | | cancel_order | Cancels order before payment. No financial impact. | "Cancel this order?" | | cancel_negotiation | Ends negotiation session. History preserved but no further interaction. | "Cancel negotiation with [business]?" | | reject_deal | Rejects proposal. Negotiation remains active for revised proposals. | "Reject this proposal? The business can send a revised offer." | | cancel_intention | Cancels intention. Associated negotiations may be affected. | "Cancel this intention?" |

    State Machine Reference

    #### Intention Lifecycle

    draft β†’ published β†’ matching β†’ matched β†’ negotiating β†’ contracted
      ↓         ↓                      ↓           ↓
    cancelled cancelled              cancelled   gated β†’ expired
    

    | Status | Allowed Operations | |---|---| | draft | update_intention, publish_intention, delete_intention, cancel_intention | | published | trigger_matching, redescribe_intention, cancel_intention | | matching | (wait for completion β€” poll via get_match_status) | | matched | get_matches, start_negotiations, redescribe_intention, cancel_intention | | negotiating | send_negotiation_message, accept_deal, reject_deal, cancel_negotiation, redescribe_intention | | contracted | (order created β€” manage via order tools) | | gated | (awaiting platform review) | | cancelled | delete_intention | | expired | delete_intention |

    #### Order Lifecycle

    pending_payment β†’ delivering β†’ pending_review β†’ pending_rating β†’ completed
           ↓                           ↕ revision_requested
       cancelled                    disputed
                                       ↓
                                    refunded
    

    | Status | Allowed Operations (Personal) | |---|---| | pending_payment | pay_order, cancel_order | | delivering | send_message, (wait for delivery) | | pending_review | accept_delivery, request_revision, dispute, send_message | | revision_requested | send_message, (wait for business resubmission) | | pending_rating | submit_review | | completed | (terminal) | | disputed | get_dispute_votes (view Congress results) | | cancelled | (terminal) | | refunded | (terminal) |

    #### Negotiation Lifecycle

    active β†’ contracted (creates contract + order)
      ↓  ↑
      ↓  rejected (stays active, can re-propose)
      ↓
    cancelled (terminal)
    closed (terminal β€” order completed or cancelled)
    

    | Status | Allowed Operations (Personal) | |---|---| | active | send_negotiation_message, accept_deal, reject_deal, cancel_negotiation | | contracted | (order created β€” use order tools) | | rejected | (terminal for that proposal; session may remain active) | | cancelled | (terminal) | | closed | (terminal) |

    Async Flow Patterns

    #### Standard Matching Flow

    create_intention(content) β†’ publish_intention(id)
      β†’ trigger_matching(id)
      β†’ poll get_match_status(id) until 'completed'
      β†’ get_matches(id) β†’ present candidates to user
      β†’ start_negotiations(id, user_selected_ids)
    

    #### Quick Search Shortcut

    quick_search(content) β†’ returns matches directly (synchronous)
    

    Combines create + profile + match in one call. Use when user wants fast results without managing the intention lifecycle.

    #### Negotiation β†’ Order Flow

    (in active negotiation)
      β†’ business sends proposal (send_proposal with status='final_deal')
      β†’ user reviews proposal
      β†’ accept_deal(session_id) β†’ creates contract + order
      β†’ pay_order(order_id, currency)
      β†’ (wait for delivery)
      β†’ accept_delivery(order_id) β†’ releases escrow, moves to pending_rating
      β†’ submit_review(order_id, rating)
    

    API Overview

    Auth: Authorization: Bearer . All paths prefixed with /api/v1. UUIDs for all IDs. Bilingual fields use _zh/_en suffixes. Pagination via offset+limit.

    Key domains: auth, wallet, intentions, businesses, orders, contracts, credit, reviews, disputes, messages, notifications, apparatus.

    See references/ for detailed request/response schemas per domain.

    Error Summary

    | Status | Meaning | |--------|---------| | 400 | Bad request β€” validation failed | | 401 | Unauthorized β€” invalid or missing token | | 403 | Forbidden β€” insufficient role/permissions | | 404 | Not found | | 409 | Conflict β€” duplicate or invalid state transition | | 422 | Unprocessable entity β€” schema validation error | | 500 | Internal server error |

    βš™οΈ Configuration

    Set TMR_API_KEY β€” create one via POST /api/v1/api-keys with role: "personal".

    Optionally set TMR_BASE_URL (default: https://tmrland.com/api/v1).