Transactions

increase-take

Increase the delegate take of a hotkey.

View as Markdown

The delegate take is the fraction of staking emissions a delegate hotkey keeps for itself before distributing the rest to its nominators. This call only moves the take upward: the chain rejects values at or below the current take, values above the configured maximum, and increases made sooner than the take rate limit allows. Signed by the coldkey that owns the hotkey. Use set_take if you just want to land on an absolute value without tracking the direction yourself.

SignerOriginPalletWraps
coldkeysigned account (pallet role may apply)SubtensorModuleSubtensorModule.increase_take

Parameters

ParameterTypeRequiredDescription
takeinteger | number | stringyesNew take: a 0..1 fraction (e.g. 0.18 for 18 percent) or the raw u16 proportion (0..65535). The chain enforces its configured take bounds.
hotkey_ss58stringnoHotkey the operation applies to.

Address parameters (--hotkey, --coldkey, --dest, ...) accept a raw ss58 address, an address-book or proxy-book name, or a local wallet/hotkey name.

CLI

Preview with --dry-run (shows fee, effects, and policy result without submitting), then submit:

btcli tx increase-take \
  --take <value> --dry-run
btcli tx increase-take \
  --take <value> -w my_coldkey

Python

import bittensor as bt
from bittensor.wallet import Wallet

wallet = Wallet(name="my_coldkey", hotkey="my_hotkey")
intent = bt.IncreaseTake(take="...")

sub = bt.Subtensor()
plan = sub.plan(intent, wallet)   # fee, effects, policy — no submission
result = sub.execute(intent, wallet)
if not result.success:
    print(result.error.code, result.error.remediation)

(bt.Subtensor is also the async client — async with bt.Subtensor() as client: — see The client.) Or build the intent by op name, as an agent would:

result = sub.execute_tool("increase_take", {...}, wallet)

On-chain implementation

SubtensorModule.increase_takepallets/subtensor/src/macros/dispatches.rs#L525:

#[pallet::call_index(66)]
#[pallet::weight((<T as crate::pallet::Config>::WeightInfo::increase_take(), DispatchClass::Normal, Pays::Yes))]
pub fn increase_take(
    origin: OriginFor<T>,
    hotkey: T::AccountId,
    take: PerU16,
) -> DispatchResult {
    Self::do_increase_take(origin, hotkey, take)
}

Delegates to do_increase_take.

Every file is browsable under /code exactly as built into the runtime, or as plain text under /code/raw/<path> (index: /code/index.json).