@velinussage/locus-agent-skill 0.1.3 → 0.1.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/skill/locus-agent-tools/SKILL.md +17 -11
package/package.json
CHANGED
|
@@ -19,11 +19,12 @@ Locus returns awareness and verification steps, not a verdict. Do not score, ran
|
|
|
19
19
|
|
|
20
20
|
## What to remember first
|
|
21
21
|
|
|
22
|
-
- **23+ national free tools work for geocodable US addresses, with no payment or local coverage check needed.** The live free catalog currently exposes
|
|
22
|
+
- **23+ national free tools work for geocodable US addresses, with no payment or local coverage check needed.** The live free catalog currently exposes 51 tools total. Use national lanes for rural addresses too, including flood zone, flood gauges, FEMA events, NOAA storms, radon, wildfire risk, cleanup sites, toxic releases, water systems, representatives, governing districts, fair-market rents, opportunity zones, seismic design, unemployment, house-price index context, nearby places, ordinance leads, and data-center/source-discovery prompts.
|
|
23
23
|
- **National free tools cover all 50 states for geocodable US addresses.** Local lanes are wired jurisdiction by jurisdiction and are growing. Always expect national context. Treat local parcel, zoning, permit, tax, and development-case depth as coverage-dependent.
|
|
24
24
|
- **Start with `locus_place_facts` when lane availability says it is available.** It is the one-call address bundle for supported parcel areas: parcel facts, FEMA flood zone, governing districts, transportation context, and tax context where wired.
|
|
25
25
|
- **Use `locus_lane_availability` before paid calls.** It maps national, local, varies, not-covered, and degraded lanes, then gives per-paid-tool buy recommendations.
|
|
26
|
-
- **
|
|
26
|
+
- **Treat partial trend coverage as a check-first signal.** `supported_partial` trend places appear in `lanes.varies` with low paid substance; buy `locus-local-trend-brief` only when `buyRecommendations[].substanceHere` is `medium` or better. Thin exact-radius results can return a `charged:false` data-sufficiency diagnostic instead of a paid brief.
|
|
27
|
+
- **Paid single-call tools currently list at $0.05 to $0.07 USDC; `locus-place-report-batch` is $0.25 USDC per 10-50 address async job.** Call the live paid catalog or `locus_lane_availability` for current `priceUsdc`, then read the x402 challenge for exact price, chain, recipient, and schema before payment.
|
|
27
28
|
|
|
28
29
|
## Quick connect
|
|
29
30
|
|
|
@@ -112,7 +113,12 @@ Trimmed response example for a rural Montana ZIP:
|
|
|
112
113
|
{ "tool": "locus_place_facts", "access": "free", "why": "needs a wired parcel backbone", "requestTool": "locus_request_coverage" }
|
|
113
114
|
],
|
|
114
115
|
"degraded": [
|
|
115
|
-
{
|
|
116
|
+
{
|
|
117
|
+
"tool": "locus_housing_stock",
|
|
118
|
+
"access": "free",
|
|
119
|
+
"why": "Temporarily unavailable: the upstream Census geocoder is failing for all points.",
|
|
120
|
+
"fallbackTools": ["locus_fair_market_rents"]
|
|
121
|
+
}
|
|
116
122
|
]
|
|
117
123
|
},
|
|
118
124
|
"buyRecommendations": [
|
|
@@ -179,11 +185,11 @@ These work for geocodable US addresses at no cost. Some accept address directly.
|
|
|
179
185
|
| County unemployment trend | `locus_unemployment` | `{ "address": "..." }` or `{ "latitude": 35.22, "longitude": -80.84 }` | Recent BLS LAUS county unemployment trend. Reported statistic only, not an area-quality label. |
|
|
180
186
|
| State house-price index | `locus_house_price_index` | `{ "address": "..." }` or `{ "latitude": 35.22, "longitude": -80.84 }` | Latest state-level FHFA All-Transactions House Price Index and year-over-year change via FRED. Not an appraisal or value estimate. |
|
|
181
187
|
| Nearby places and amenities | `locus_nearby_places` | `{ "address": "...", "radiusMeters": 800 }` | OpenStreetMap nearby amenities/places with categories, distance, and OSM provenance. |
|
|
182
|
-
| Data-center or large-development watch prompts | `locus_data_center_watch` | `{ "address": "..." }` or `{ "state": "NC", "county": "Wake County", "municipality": "Raleigh" }` | Bounded official-source query pack and
|
|
188
|
+
| Data-center or large-development watch prompts | `locus_data_center_watch` | `{ "address": "..." }` or `{ "state": "NC", "county": "Wake County", "municipality": "Raleigh" }` | Bounded official-source query pack and lead-discovery prompts for large projects, data centers, utility/water/planning sources. |
|
|
183
189
|
| Local ordinance leads | `locus_ordinance_leads` | `{ "address": "...", "topics": ["short_term_rental", "adu"] }` or `{ "place": "Raleigh, NC" }` | Jurisdiction-locked official-source query pack for ordinance research. Leads only, not legal advice. |
|
|
184
190
|
| Coastal county catalog | `locus_coastal_county_catalog` | `{}` or `{ "county": "new-hanover-nc" }` | Catalog of supported coastal source packs, overlays, source leads, and limitations. |
|
|
185
191
|
|
|
186
|
-
Temporarily degraded national tools may appear in `lanes.degraded`, such as `
|
|
192
|
+
Temporarily degraded national tools may appear in `lanes.degraded`, such as `locus_housing_stock` when an upstream source is failing for every point. If `locus_regulated_facility_compliance` ever appears there during a future EPA ECHO outage, use `locus_environmental_history` and `locus_toxic_releases` as the functional fallback; otherwise ECHO compliance is a callable national lane.
|
|
187
193
|
|
|
188
194
|
### Local or coverage-dependent free tools
|
|
189
195
|
|
|
@@ -196,15 +202,15 @@ Temporarily degraded national tools may appear in `lanes.degraded`, such as `loc
|
|
|
196
202
|
| Transportation projects and traffic counts | `locus_transportation_context` | `{ "address": "...", "radiusMeters": 2000 }` | State DOT funded projects, traffic-count stations, routes, statuses where wired. |
|
|
197
203
|
| Transit stops and routes | `locus_transit_context` | `{ "address": "...", "radiusMeters": 400 }` | Transit stops, routes, shelter/ADA fields, headways where supported. |
|
|
198
204
|
| Recent nearby parcel transfers | `locus_parcel_transfers` | `{ "address": "...", "radiusMeters": 1500, "monthsBack": 12 }` | Recorded sales/transfers near the point where parcel-sale sources are wired. |
|
|
199
|
-
| Property-tax rates | `locus_property_tax_rates` | `{ "place": "Wake County, NC" }` | Adopted rate components and jurisdiction basis where wired. |
|
|
200
|
-
| Property-tax estimate | `locus_property_tax_estimate` | `{ "address": "..." }` | Estimated annual property tax from assessed value and rates where wired.
|
|
201
|
-
| Tax calendar | `locus_tax_calendar` | `{ "county": "
|
|
205
|
+
| Property-tax rates | `locus_property_tax_rates` | `{ "place": "Wake County, NC" }` | Adopted rate components and jurisdiction basis where wired. NC only today. |
|
|
206
|
+
| Property-tax estimate | `locus_property_tax_estimate` | `{ "address": "..." }` | Estimated annual property tax from assessed value and NC rates where wired. NC only today; not a valuation. |
|
|
207
|
+
| Tax calendar | `locus_tax_calendar` | `{ "county": "Harris County, TX" }` or `{ "address": "..." }` | State property-tax statutory framework (cited to the state tax code) for NC, TX, CA, FL, NY, plus the official county source pointer and a current-year live-lookup prompt for the volatile per-cycle dates; verified prior-cycle county dates where curated (NC). |
|
|
202
208
|
| Area reported-crime context | `locus_area_incidents` | `{ "address": "...", "radiusMeters": 1000, "lookbackDays": 365 }` | Area-level or citywide reported-incident context where wired, plus caveats. No safety verdict. |
|
|
203
209
|
| Local legislation preview | `locus_local_legislation` | `{ "address": "..." }` | Recent property-relevant legislation preview, status labels, source attribution. Not legal advice. |
|
|
204
210
|
| Dated changes around one place | `locus_ownership_loop` | `{ "address": "...", "radiusMeters": 1500, "state": "NC", "countyFips3": "183", "zip": "27601" }` | Composite dated-change bundle across available ownership, tax, flood, transfer, and local lanes. |
|
|
205
211
|
| Coastal overlays | `locus_coastal_county_overlays` | `{ "address": "..." }` or `{ "latitude": 34.22, "longitude": -77.88, "county": "auto" }` | Coastal hazard overlays, parcel/address facts, zoning/flood/wetland/resiliency context for supported coastal counties. |
|
|
206
212
|
| ACS housing stock | `locus_housing_stock` | `{ "address": "..." }` | Census tract housing units, tenure, median rent/value, year built when upstream is healthy. |
|
|
207
|
-
| EPA facility compliance | `locus_regulated_facility_compliance` | `{ "address": "...", "radiusMeters": 5000 }` | EPA ECHO facility compliance and inspection/enforcement summary when upstream is healthy. |
|
|
213
|
+
| EPA facility compliance | `locus_regulated_facility_compliance` | `{ "address": "...", "radiusMeters": 5000 }` | EPA ECHO facility compliance and inspection/enforcement summary when upstream is healthy. If lane availability lists it as degraded, use the fallback tools instead. |
|
|
208
214
|
|
|
209
215
|
## Worked example: address to free tools to answer
|
|
210
216
|
|
|
@@ -270,7 +276,7 @@ Use the argument key from the tool schema. Do not send every place as `place`; m
|
|
|
270
276
|
## Paid report rules
|
|
271
277
|
|
|
272
278
|
- Unsupported or discovery-only places return a free diagnostic, not a payment challenge.
|
|
273
|
-
- Current paid tools list between $0.05 and $0.07 USDC per
|
|
279
|
+
- Current paid single-call tools list between $0.05 and $0.07 USDC; `locus-place-report-batch` is $0.25 USDC per 10-50 address async job. Read `priceUsdc` from `locus_lane_availability` or the paid tool index, then confirm exact cost, network, asset, and recipient from the 402 challenge before payment.
|
|
274
280
|
- The price, network, asset, and recipient appear before payment.
|
|
275
281
|
- Paid results return only after settlement succeeds.
|
|
276
282
|
- Payment metadata binds to the tool and a canonical hash of arguments, not the raw address.
|
|
@@ -278,7 +284,7 @@ Use the argument key from the tool schema. Do not send every place as `place`; m
|
|
|
278
284
|
|
|
279
285
|
## x402 payment flow
|
|
280
286
|
|
|
281
|
-
The compiled paid tools (`locus-place-report`, `locus-local-trend-brief`, `locus-local-policy-brief`, `locus-before-you-sign`, `locus-environmental-context`) are gated with x402 micropayments in USDC on Base. The flow is identical over REST, MCP, and A2A:
|
|
287
|
+
The compiled paid tools (`locus-place-report`, `locus-place-report-batch`, `locus-local-trend-brief`, `locus-local-policy-brief`, `locus-before-you-sign`, `locus-environmental-context`) are gated with x402 micropayments in USDC on Base. The flow is identical over REST, MCP, and A2A:
|
|
282
288
|
|
|
283
289
|
1. Call the paid tool without payment: `POST https://api.locus.report/api/<tool-slug>` over REST, `locus_execute` over MCP, or `/a2a/v1/message:send` over A2A. The free `/tools/call` facade is never paid.
|
|
284
290
|
2. A covered place returns **HTTP 402** with `{ "x402Version": 2, "accepts": [{ "scheme": "exact", "network", "maxAmountRequired", "payTo", "asset", "extra": { "assetTransferMethod": "eip3009" } }] }`. Read live values from the challenge.
|