mcpField
A
autumn-add-usage-tracking

autumn-add-usage-tracking

github.com/useautumn開発151 回インストール3 週間前に更新
リポジトリ

autumn-add-usage-tracking について

autumn-add-usage-tracking は、アプリケーションへの Autumn の機能利用チェックと記録の組み込みを案内するスキルです。バックエンドでの制限適用、フロントエンドでの利用状況表示、従量制機能、クレジットシステムを扱います。

主な機能

  1. 01処理前の機能アクセス確認
  2. 02処理成功後の利用量記録
  3. 03バックエンドでの上限適用
  4. 04顧客の利用残高表示
  5. 05従量制機能とクレジットシステムの処理
  6. 06冪等キーと一括利用量の指定

活用シーン

  1. 01顧客が上限に達した際の操作制限
  2. 02完了した API や機能利用の記録
  3. 03React 画面での残り利用量の表示
  4. 04従量制機能の利用に応じたクレジット消費

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/useautumn/skills --skill autumn-add-usage-tracking

インストール後、Claude Code で/autumn-add-usage-trackingを入力して読み込まれたか確認します。

詳細

Autumn の使用状況追跡

コード例と最新の API については、常に docs.useautumn.com を参照してください。

Autumn は機能の使用状況を追跡し、制限を適用します。セキュリティのため、バックエンドでのチェックが必要です。


クイックリファレンス

基本パターン
check → work → track
チェックのレスポンス
フィールド説明
allowed顧客が処理を続行できるかどうか
balance残りのユニット数
included_usageプランに含まれる合計使用量
unlimited制限が適用されていないこと
機能の種類
種類動作
booleanアクセスを許可または拒否
metered制限に対する使用量を追跡
credit_system複数の機能で共有するプール

セキュリティモデル

レイヤー目的信頼性
フロントエンドUX(UI の表示/非表示)信頼できない
バックエンド適用必須

バックエンドの実装

import { Autumn } from "autumn-js";

const autumn = new Autumn({ secretKey: process.env.AUTUMN_SECRET_KEY });

// 1. Check
const { data } = await autumn.check({ customer_id, feature_id: "api_calls" });
if (!data.allowed) return { error: "Limit reached" };

// 2. Work
const result = await doWork();

// 3. Track
await autumn.track({ customer_id, feature_id: "api_calls", value: 1 });
return result;
from autumn import Autumn

autumn = Autumn('am_sk_test_xxx')

response = await autumn.check(customer_id="user_123", feature_id="api_calls")
if not response.allowed:
    raise HTTPException(403, "Limit reached")

result = await do_work()
await autumn.track(customer_id="user_123", feature_id="api_calls", value=1)

React の実装

import { useCustomer } from "autumn-js/react";

const { check, refetch } = useCustomer();

const handleAction = async () => {
  const { data } = await check({ featureId: "messages" });
  if (!data?.allowed) {
    showUpgradePrompt();
    return;
  }
  
  await performAction();
  await refetch();
};

使用状況の表示

const { customer } = useCustomer();
const feature = customer?.features?.api_calls;

<p>{feature?.balance} / {feature?.included_usage}</p>

クレジットシステム

クレジットシステムではなく、基盤となる従量制機能を追跡します。

// Config: credits → api_calls (1), image_gen (10)

// Wrong
await autumn.track({ customer_id, feature_id: "credits", value: 10 });

// Right - Autumn deducts 10 credits automatically
await autumn.track({ customer_id, feature_id: "image_gen", value: 1 });

よくある注意点

  1. 成功後に追跡する - 処理が正常に完了した場合にのみ追跡します
  2. バックエンドが必須 - フロントエンドのチェックは回避される可能性があります
  3. クレジットシステム - クレジットプールではなく、従量制機能を追跡します
  4. 冪等性 - 二重計上を防ぐため、idempotency_key を使用します
  5. 一括追跡 - 一括操作では、より大きな value を渡します

リソース

コメント