> ## Documentation Index
> Fetch the complete documentation index at: https://docs.confess.best/llms.txt
> Use this file to discover all available pages before exploring further.

# alterself: Python selfbot library for Discord

> alterself is a Python library for building Discord selfbots with a command framework, gateway events, a full HTTP client, and browser fingerprint spoofing.

alterself gives you everything you need to automate a Discord user account: a command framework with prefix routing, a gateway event bus, a complete REST HTTP client, and a built-in spoofing engine that synthesises a coherent browser fingerprint so your account behaves like a real Chrome client. Install it with a single `pip install` and have your first selfbot running in minutes.

<CardGroup cols={2}>
  <Card title="Quick Start" icon="rocket" href="/quickstart">
    Get your first selfbot running in under five minutes
  </Card>

  <Card title="Installation" icon="download" href="/installation">
    Install alterself and configure your environment
  </Card>

  <Card title="Core Concepts" icon="book-open" href="/concepts/client">
    Understand the Client, commands, events, and cogs
  </Card>

  <Card title="API Reference" icon="code" href="/api/http-messages">
    Explore the full HTTP method and model reference
  </Card>
</CardGroup>

## What you can build

<CardGroup cols={3}>
  <Card title="Command Bots" icon="terminal">
    Build prefix-based command bots that respond to your own messages with argument parsing and checks
  </Card>

  <Card title="Event Automations" icon="bolt">
    React to any Discord gateway event, including messages, reactions, guild changes, presence updates, and more
  </Card>

  <Card title="Presence Cycling" icon="circle-user">
    Set custom statuses, fake Spotify playback, cycle activities, and control your online/idle/DND state
  </Card>
</CardGroup>

## Get started in three steps

<Steps>
  <Step title="Install alterself">
    ```bash theme={null}
    pip install alterself
    ```
  </Step>

  <Step title="Create your client">
    ```python app.py theme={null}
    import alterself

    bot = alterself.Client(token="YOUR_USER_TOKEN", prefix=".")

    @bot.on_event
    async def on_ready():
        print(f"Ready as {bot.me.username}")

    @bot.command()
    async def ping(ctx):
        await ctx.reply(f"pong | {bot.latency * 1000:.1f} ms")
    ```
  </Step>

  <Step title="Run it">
    ```bash theme={null}
    python app.py
    ```
  </Step>
</Steps>

<Note>
  **Never share your Discord token.** Treat it like a password: anyone with your token has full access to your account.
</Note>
