<!doctype html>
<html lang="en">
  <head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <title>Cradicle Explorer</title>
    <link href="/css/bootstrap/bootstrap.min.css" rel="stylesheet">
    <style>
      .form-control-dark::placeholder {
          color: #aaa;
          opacity: 1;
      }
    </style>
    <link rel="stylesheet" href="/assets/fontawesome/css/all.min.css">
    <link rel="icon" type="image/png" href="/favicon.png">


                <link href="/css/dashboard.css" rel="stylesheet">
                </head>
                <body>
                <header class="navbar navbar-dark sticky-top bg-dark flex-md-nowrap p-0 shadow">
                  <a class="navbar-brand col-md-3 col-lg-2 me-0 px-3 fs-6" href="/">Cradicle Explorer</a>
                  <button class="navbar-toggler position-absolute d-md-none collapsed" type="button" data-bs-toggle="collapse" data-bs-target="#sidebarMenu" aria-controls="sidebarMenu" aria-expanded="false" aria-label="Toggle navigation">
                    <span class="navbar-toggler-icon"></span>
                  </button>
                  <form method="get" action="/cgi-bin/main" style="width:100%;"><input class="form-control form-control-dark w-100 rounded-0 border-0" type="text" name="q" placeholder="Search repos" aria-label="Search"></form>
                  <div class="navbar-nav flex-row">
                    <div class="nav-item text-nowrap">
                      <a class="nav-link px-3 active" href="/cgi-bin/repo?id=z3vvCL9NHB1akyzxES749hwC4vU8d">darkfi-redicle-test</a>
                    </div>
                  </div>
                </header>
                <div class="container-fluid">
                  <div class="row">
                    <nav id="sidebarMenu" class="col-md-3 col-lg-2 d-md-block bg-dark sidebar collapse">
                      <div class="position-sticky pt-3 sidebar-sticky">
                        <ul class="nav flex-column">
                          <li class="nav-item">
                            <a class="nav-link" href="/cgi-bin/repo?id=z3vvCL9NHB1akyzxES749hwC4vU8d">
                              <i class="align-text-bottom fa-solid fa-info"></i>
                              Info
                            </a>
                          </li>
                          <li class="nav-item">
                            <a class="nav-link" href="/cgi-bin/repo?id=z3vvCL9NHB1akyzxES749hwC4vU8d&issue=list">
                              <i class="align-text-bottom fa-solid fa-layer-group"></i>
                              Issues
                            </a>
                          </li>
                          <li class="nav-item">
                            <a class="nav-link" href="/cgi-bin/repo?id=z3vvCL9NHB1akyzxES749hwC4vU8d&patch=list">
                              <i class="align-text-bottom fa-solid fa-vest-patches"></i>
                              Patches
                            </a>
                          </li>
                          <li class="nav-item">
                            <a class="nav-link" href="/cgi-bin/repo?id=z3vvCL9NHB1akyzxES749hwC4vU8d&wallet=list">
                              <i class="align-text-bottom fa-solid fa-wallet"></i>
                              Wallets
                            </a>
                          </li>
                          <li class="nav-item">
                            <a class="nav-link active" href="/cgi-bin/repo?id=z3vvCL9NHB1akyzxES749hwC4vU8d&source=.">
                              <i class="align-text-bottom fa-solid fa-code"></i>
                              Source
                            </a>
                          </li>
                        <h6 class="sidebar-heading d-flex justify-content-between align-items-center px-3 mt-4 mb-1 text-muted text-uppercase">
                          <span></span>
                        </h6>
                        <ul class="nav flex-column mb-2">
                        
    <h6 class="sidebar-heading d-flex justify-content-between align-items-center px-3 mt-1 mb-1 text-muted text-uppercase">
      <span>Source</span>
    </h6>
    <li><a class="nav-link py-0" style="padding-left:16px;" href="/cgi-bin/repo?id=z3vvCL9NHB1akyzxES749hwC4vU8d&source=.github"><i class="fa-solid fa-folder" style="color:#f0c040;"></i> .github</a></li><li><a class="nav-link py-0" style="padding-left:16px;" href="/cgi-bin/repo?id=z3vvCL9NHB1akyzxES749hwC4vU8d&source=bench"><i class="fa-solid fa-folder" style="color:#f0c040;"></i> bench</a></li><li><a class="nav-link py-0" style="padding-left:16px;" href="/cgi-bin/repo?id=z3vvCL9NHB1akyzxES749hwC4vU8d&source=bin"><i class="fa-solid fa-folder-open" style="color:#f0c040;"></i> bin</a></li><li><a class="nav-link py-0" style="padding-left:32px;" href="/cgi-bin/repo?id=z3vvCL9NHB1akyzxES749hwC4vU8d&source=bin%2Fapp"><i class="fa-solid fa-folder" style="color:#f0c040;"></i> app</a></li><li><a class="nav-link py-0" style="padding-left:32px;" href="/cgi-bin/repo?id=z3vvCL9NHB1akyzxES749hwC4vU8d&source=bin%2Fdarkfid"><i class="fa-solid fa-folder" style="color:#f0c040;"></i> darkfid</a></li><li><a class="nav-link py-0" style="padding-left:32px;" href="/cgi-bin/repo?id=z3vvCL9NHB1akyzxES749hwC4vU8d&source=bin%2Fdarkirc"><i class="fa-solid fa-folder-open" style="color:#f0c040;"></i> darkirc</a></li><li><a class="nav-link py-0" style="padding-left:48px;" href="/cgi-bin/repo?id=z3vvCL9NHB1akyzxES749hwC4vU8d&source=bin%2Fdarkirc%2Fconfig"><i class="fa-solid fa-folder" style="color:#f0c040;"></i> config</a></li><li><a class="nav-link py-0" style="padding-left:48px;" href="/cgi-bin/repo?id=z3vvCL9NHB1akyzxES749hwC4vU8d&source=bin%2Fdarkirc%2Fproof"><i class="fa-solid fa-folder" style="color:#f0c040;"></i> proof</a></li><li><a class="nav-link py-0" style="padding-left:48px;" href="/cgi-bin/repo?id=z3vvCL9NHB1akyzxES749hwC4vU8d&source=bin%2Fdarkirc%2Fscript"><i class="fa-solid fa-folder-open" style="color:#f0c040;"></i> script</a></li><li><a class="nav-link py-0" style="padding-left:64px;" href="/cgi-bin/repo?id=z3vvCL9NHB1akyzxES749hwC4vU8d&source=bin%2Fdarkirc%2Fscript%2Fbots"><i class="fa-solid fa-folder" style="color:#f0c040;"></i> bots</a></li><li><a class="nav-link py-0" style="padding-left:64px;" href="/cgi-bin/repo?id=z3vvCL9NHB1akyzxES749hwC4vU8d&file=bin%2Fdarkirc%2Fscript%2F.gitignore"><i class="fa-solid fa-file" style="color:#888;"></i> .gitignore</a></li><li><a class="nav-link py-0 active" style="padding-left:64px;" href="/cgi-bin/repo?id=z3vvCL9NHB1akyzxES749hwC4vU8d&file=bin%2Fdarkirc%2Fscript%2FREADME.md"><i class="fa-solid fa-file" style="color:#888;"></i> README.md</a></li><li><a class="nav-link py-0" style="padding-left:48px;" href="/cgi-bin/repo?id=z3vvCL9NHB1akyzxES749hwC4vU8d&source=bin%2Fdarkirc%2Fsrc"><i class="fa-solid fa-folder" style="color:#f0c040;"></i> src</a></li><li><a class="nav-link py-0" style="padding-left:48px;" href="/cgi-bin/repo?id=z3vvCL9NHB1akyzxES749hwC4vU8d&file=bin%2Fdarkirc%2F.gitignore"><i class="fa-solid fa-file" style="color:#888;"></i> .gitignore</a></li><li><a class="nav-link py-0" style="padding-left:48px;" href="/cgi-bin/repo?id=z3vvCL9NHB1akyzxES749hwC4vU8d&file=bin%2Fdarkirc%2FCargo.toml"><i class="fa-solid fa-file" style="color:#888;"></i> Cargo.toml</a></li><li><a class="nav-link py-0" style="padding-left:48px;" href="/cgi-bin/repo?id=z3vvCL9NHB1akyzxES749hwC4vU8d&file=bin%2Fdarkirc%2FMakefile"><i class="fa-solid fa-file" style="color:#888;"></i> Makefile</a></li><li><a class="nav-link py-0" style="padding-left:48px;" href="/cgi-bin/repo?id=z3vvCL9NHB1akyzxES749hwC4vU8d&file=bin%2Fdarkirc%2FREADME.md"><i class="fa-solid fa-file" style="color:#888;"></i> README.md</a></li><li><a class="nav-link py-0" style="padding-left:48px;" href="/cgi-bin/repo?id=z3vvCL9NHB1akyzxES749hwC4vU8d&file=bin%2Fdarkirc%2Fandroid.Dockerfile"><i class="fa-solid fa-file" style="color:#888;"></i> android.Dockerfile</a></li><li><a class="nav-link py-0" style="padding-left:48px;" href="/cgi-bin/repo?id=z3vvCL9NHB1akyzxES749hwC4vU8d&file=bin%2Fdarkirc%2Fbuild.rs"><i class="fa-solid fa-file" style="color:#888;"></i> build.rs</a></li><li><a class="nav-link py-0" style="padding-left:48px;" href="/cgi-bin/repo?id=z3vvCL9NHB1akyzxES749hwC4vU8d&file=bin%2Fdarkirc%2Fdarkirc_config.toml"><i class="fa-solid fa-file" style="color:#888;"></i> darkirc_config.toml</a></li><li><a class="nav-link py-0" style="padding-left:32px;" href="/cgi-bin/repo?id=z3vvCL9NHB1akyzxES749hwC4vU8d&source=bin%2Fdeg"><i class="fa-solid fa-folder" style="color:#f0c040;"></i> deg</a></li><li><a class="nav-link py-0" style="padding-left:32px;" href="/cgi-bin/repo?id=z3vvCL9NHB1akyzxES749hwC4vU8d&source=bin%2Fdnet"><i class="fa-solid fa-folder" style="color:#f0c040;"></i> dnet</a></li><li><a class="nav-link py-0" style="padding-left:32px;" href="/cgi-bin/repo?id=z3vvCL9NHB1akyzxES749hwC4vU8d&source=bin%2Fdrk"><i class="fa-solid fa-folder" style="color:#f0c040;"></i> drk</a></li><li><a class="nav-link py-0" style="padding-left:32px;" href="/cgi-bin/repo?id=z3vvCL9NHB1akyzxES749hwC4vU8d&source=bin%2Fexplorer"><i class="fa-solid fa-folder" style="color:#f0c040;"></i> explorer</a></li><li><a class="nav-link py-0" style="padding-left:32px;" href="/cgi-bin/repo?id=z3vvCL9NHB1akyzxES749hwC4vU8d&source=bin%2Ffud"><i class="fa-solid fa-folder" style="color:#f0c040;"></i> fud</a></li><li><a class="nav-link py-0" style="padding-left:32px;" href="/cgi-bin/repo?id=z3vvCL9NHB1akyzxES749hwC4vU8d&source=bin%2Fgenev"><i class="fa-solid fa-folder" style="color:#f0c040;"></i> genev</a></li><li><a class="nav-link py-0" style="padding-left:32px;" href="/cgi-bin/repo?id=z3vvCL9NHB1akyzxES749hwC4vU8d&source=bin%2Flilith"><i class="fa-solid fa-folder" style="color:#f0c040;"></i> lilith</a></li><li><a class="nav-link py-0" style="padding-left:32px;" href="/cgi-bin/repo?id=z3vvCL9NHB1akyzxES749hwC4vU8d&source=bin%2Fminerd"><i class="fa-solid fa-folder" style="color:#f0c040;"></i> minerd</a></li><li><a class="nav-link py-0" style="padding-left:32px;" href="/cgi-bin/repo?id=z3vvCL9NHB1akyzxES749hwC4vU8d&source=bin%2Ftau"><i class="fa-solid fa-folder" style="color:#f0c040;"></i> tau</a></li><li><a class="nav-link py-0" style="padding-left:32px;" href="/cgi-bin/repo?id=z3vvCL9NHB1akyzxES749hwC4vU8d&source=bin%2Fvanityaddr"><i class="fa-solid fa-folder" style="color:#f0c040;"></i> vanityaddr</a></li><li><a class="nav-link py-0" style="padding-left:32px;" href="/cgi-bin/repo?id=z3vvCL9NHB1akyzxES749hwC4vU8d&source=bin%2Fzkas"><i class="fa-solid fa-folder" style="color:#f0c040;"></i> zkas</a></li><li><a class="nav-link py-0" style="padding-left:32px;" href="/cgi-bin/repo?id=z3vvCL9NHB1akyzxES749hwC4vU8d&source=bin%2Fzkrunner"><i class="fa-solid fa-folder" style="color:#f0c040;"></i> zkrunner</a></li><li><a class="nav-link py-0" style="padding-left:16px;" href="/cgi-bin/repo?id=z3vvCL9NHB1akyzxES749hwC4vU8d&source=contrib"><i class="fa-solid fa-folder" style="color:#f0c040;"></i> contrib</a></li><li><a class="nav-link py-0" style="padding-left:16px;" href="/cgi-bin/repo?id=z3vvCL9NHB1akyzxES749hwC4vU8d&source=doc"><i class="fa-solid fa-folder" style="color:#f0c040;"></i> doc</a></li><li><a class="nav-link py-0" style="padding-left:16px;" href="/cgi-bin/repo?id=z3vvCL9NHB1akyzxES749hwC4vU8d&source=example"><i class="fa-solid fa-folder" style="color:#f0c040;"></i> example</a></li><li><a class="nav-link py-0" style="padding-left:16px;" href="/cgi-bin/repo?id=z3vvCL9NHB1akyzxES749hwC4vU8d&source=fuzz"><i class="fa-solid fa-folder" style="color:#f0c040;"></i> fuzz</a></li><li><a class="nav-link py-0" style="padding-left:16px;" href="/cgi-bin/repo?id=z3vvCL9NHB1akyzxES749hwC4vU8d&source=proof"><i class="fa-solid fa-folder" style="color:#f0c040;"></i> proof</a></li><li><a class="nav-link py-0" style="padding-left:16px;" href="/cgi-bin/repo?id=z3vvCL9NHB1akyzxES749hwC4vU8d&source=script"><i class="fa-solid fa-folder" style="color:#f0c040;"></i> script</a></li><li><a class="nav-link py-0" style="padding-left:16px;" href="/cgi-bin/repo?id=z3vvCL9NHB1akyzxES749hwC4vU8d&source=src"><i class="fa-solid fa-folder" style="color:#f0c040;"></i> src</a></li><li><a class="nav-link py-0" style="padding-left:16px;" href="/cgi-bin/repo?id=z3vvCL9NHB1akyzxES749hwC4vU8d&source=tests"><i class="fa-solid fa-folder" style="color:#f0c040;"></i> tests</a></li><li><a class="nav-link py-0" style="padding-left:16px;" href="/cgi-bin/repo?id=z3vvCL9NHB1akyzxES749hwC4vU8d&file=.dockerignore"><i class="fa-solid fa-file" style="color:#888;"></i> .dockerignore</a></li><li><a class="nav-link py-0" style="padding-left:16px;" href="/cgi-bin/repo?id=z3vvCL9NHB1akyzxES749hwC4vU8d&file=.gitignore"><i class="fa-solid fa-file" style="color:#888;"></i> .gitignore</a></li><li><a class="nav-link py-0" style="padding-left:16px;" href="/cgi-bin/repo?id=z3vvCL9NHB1akyzxES749hwC4vU8d&file=Cargo.lock"><i class="fa-solid fa-file" style="color:#888;"></i> Cargo.lock</a></li><li><a class="nav-link py-0" style="padding-left:16px;" href="/cgi-bin/repo?id=z3vvCL9NHB1akyzxES749hwC4vU8d&file=Cargo.toml"><i class="fa-solid fa-file" style="color:#888;"></i> Cargo.toml</a></li><li><a class="nav-link py-0" style="padding-left:16px;" href="/cgi-bin/repo?id=z3vvCL9NHB1akyzxES749hwC4vU8d&file=IDEOLOGY.md"><i class="fa-solid fa-file" style="color:#888;"></i> IDEOLOGY.md</a></li><li><a class="nav-link py-0" style="padding-left:16px;" href="/cgi-bin/repo?id=z3vvCL9NHB1akyzxES749hwC4vU8d&file=LICENSE.md"><i class="fa-solid fa-file" style="color:#888;"></i> LICENSE.md</a></li><li><a class="nav-link py-0" style="padding-left:16px;" href="/cgi-bin/repo?id=z3vvCL9NHB1akyzxES749hwC4vU8d&file=Makefile"><i class="fa-solid fa-file" style="color:#888;"></i> Makefile</a></li><li><a class="nav-link py-0" style="padding-left:16px;" href="/cgi-bin/repo?id=z3vvCL9NHB1akyzxES749hwC4vU8d&file=README.md"><i class="fa-solid fa-file" style="color:#888;"></i> README.md</a></li><li><a class="nav-link py-0" style="padding-left:16px;" href="/cgi-bin/repo?id=z3vvCL9NHB1akyzxES749hwC4vU8d&file=king.png"><i class="fa-solid fa-file" style="color:#888;"></i> king.png</a></li><li><a class="nav-link py-0" style="padding-left:16px;" href="/cgi-bin/repo?id=z3vvCL9NHB1akyzxES749hwC4vU8d&file=rust-toolchain.toml"><i class="fa-solid fa-file" style="color:#888;"></i> rust-toolchain.toml</a></li><li><a class="nav-link py-0" style="padding-left:16px;" href="/cgi-bin/repo?id=z3vvCL9NHB1akyzxES749hwC4vU8d&file=rustfmt.toml"><i class="fa-solid fa-file" style="color:#888;"></i> rustfmt.toml</a></li>
    
                        </ul>
                      </div>
                    </nav>
                <main class="col-md-9 ms-sm-auto col-lg-10">
                  <div class="container px-1 py-3">
        
<div class="mb-2" style="font-size:1.1rem;"><a href="/cgi-bin/repo?id=z3vvCL9NHB1akyzxES749hwC4vU8d&source=.">/</a> <a href="/cgi-bin/repo?id=z3vvCL9NHB1akyzxES749hwC4vU8d&source=bin">bin</a> / <a href="/cgi-bin/repo?id=z3vvCL9NHB1akyzxES749hwC4vU8d&source=bin%2Fdarkirc">darkirc</a> / <a href="/cgi-bin/repo?id=z3vvCL9NHB1akyzxES749hwC4vU8d&source=bin%2Fdarkirc%2Fscript">script</a> / README.md</div>
        <div class="list-group">
        <div class="list-group-item">
        <div class="mb-2" style="font-weight:bold;"><i class="fa-solid fa-file"></i> README.md</div>
        <pre style="margin:0; font-size:0.85rem; overflow-x:auto; color:#fafafa;"><span style="color:#666; user-select:none;"> 1</span>  IRC Bots
<span style="color:#666; user-select:none;"> 2</span>  ========
<span style="color:#666; user-select:none;"> 3</span>  
<span style="color:#666; user-select:none;"> 4</span>  ## `meetbot`
<span style="color:#666; user-select:none;"> 5</span>  
<span style="color:#666; user-select:none;"> 6</span>  `meetbot.py` is a bot used to keep topics for IRC channels, that can
<span style="color:#666; user-select:none;"> 7</span>  be discussed on meetings. Multiple channels can be configured and this
<span style="color:#666; user-select:none;"> 8</span>  is done through `meetbot_cfg.py`.
<span style="color:#666; user-select:none;"> 9</span>  
<span style="color:#666; user-select:none;">10</span>  **Notes:**
<span style="color:#666; user-select:none;">11</span>  * Never add secrets to the public repo config!
<span style="color:#666; user-select:none;">12</span>  
<span style="color:#666; user-select:none;">13</span>  ### Setup
<span style="color:#666; user-select:none;">14</span>  
<span style="color:#666; user-select:none;">15</span>  * Download `meetbot.py` and `meetbot_cfg.py` 
<span style="color:#666; user-select:none;">16</span>  * Edit `meetbot_cfg.py` for your needs.
<span style="color:#666; user-select:none;">17</span>  * Navigate terminal to the folder where `meetbot.py` is.
<span style="color:#666; user-select:none;">18</span>  * Run the bot: `$ python meetbot.py`
<span style="color:#666; user-select:none;">19</span>  
<span style="color:#666; user-select:none;">20</span>  ## `titlebot`
<span style="color:#666; user-select:none;">21</span>  `titlebot.py` is a bot used to print the title of a website provided by
<span style="color:#666; user-select:none;">22</span>  a link in a `PRIVMSG`.
<span style="color:#666; user-select:none;">23</span>  
<span style="color:#666; user-select:none;">24</span>  ## `tweetifier`
<span style="color:#666; user-select:none;">25</span>  `tweetifier` is yet another bot that recognizes Twitter links, fetch
<span style="color:#666; user-select:none;">26</span>  the tweet text and print it out in irc.
<span style="color:#666; user-select:none;">27</span>  
<span style="color:#666; user-select:none;">28</span>  ## `taubot`
<span style="color:#666; user-select:none;">29</span>  sends notifications about some `tau` commands (namely: adding or 
<span style="color:#666; user-select:none;">30</span>  stopping a task, changing state, reassigning and new comments) to 
<span style="color:#666; user-select:none;">31</span>  desired channels in `darkirc`. 
<span style="color:#666; user-select:none;">32</span>  
<span style="color:#666; user-select:none;">33</span>  ## `mirror-bot`
<span style="color:#666; user-select:none;">34</span>  sends a copy of the message sent in an IRC server to another.
<span style="color:#666; user-select:none;">35</span>  
<span style="color:#666; user-select:none;">36</span>  ## `commitbot`
<span style="color:#666; user-select:none;">37</span>  sends notifications about pushed code to `github` to desired channels 
<span style="color:#666; user-select:none;">38</span>  in `darkirc`. 
<span style="color:#666; user-select:none;">39</span>  
<span style="color:#666; user-select:none;">40</span>  ## `test-bot`
<span style="color:#666; user-select:none;">41</span>  sends a response to user sent &#x27;test&#x27; or &#x27;echo&#x27; `PrivMsg`s.
<span style="color:#666; user-select:none;">42</span>  
<span style="color:#666; user-select:none;">43</span>  ## Setup
<span style="color:#666; user-select:none;">44</span>  
<span style="color:#666; user-select:none;">45</span>  * Create a new darkirc config for the bot.
<span style="color:#666; user-select:none;">46</span>  * Edit the config for your needs.
<span style="color:#666; user-select:none;">47</span>  * Run a `darkirc` instance, make sure to point it to the new config.
<span style="color:#666; user-select:none;">48</span>  * Run the bot script.
<span style="color:#666; user-select:none;">49</span>  
<span style="color:#666; user-select:none;">50</span>  
<span style="color:#666; user-select:none;">51</span>  ## Run
<span style="color:#666; user-select:none;">52</span>  
<span style="color:#666; user-select:none;">53</span>  ### Using a venv
<span style="color:#666; user-select:none;">54</span>  
<span style="color:#666; user-select:none;">55</span>  All these bots are working on and require Python 3.12.7. Make sure 
<span style="color:#666; user-select:none;">56</span>  Python is installed and on the latest version.
<span style="color:#666; user-select:none;">57</span>  
<span style="color:#666; user-select:none;">58</span>  Depending on your setup you may need to install a virtual environment
<span style="color:#666; user-select:none;">59</span>  for Python. Do so as follows:
<span style="color:#666; user-select:none;">60</span>  
<span style="color:#666; user-select:none;">61</span>  ```shell
<span style="color:#666; user-select:none;">62</span>  % python -m venv venv_{bot_name}
<span style="color:#666; user-select:none;">63</span>  % source venv_{bot_name}/bin/activate
<span style="color:#666; user-select:none;">64</span>  ```
<span style="color:#666; user-select:none;">65</span>  
<span style="color:#666; user-select:none;">66</span>  Then install the requirements:
<span style="color:#666; user-select:none;">67</span>  
<span style="color:#666; user-select:none;">68</span>  ```shell
<span style="color:#666; user-select:none;">69</span>  % pip install -r requirements_{bot_name}.txt
<span style="color:#666; user-select:none;">70</span>  ```
<span style="color:#666; user-select:none;">71</span>  
<span style="color:#666; user-select:none;">72</span>  Run bot:
<span style="color:#666; user-select:none;">73</span>  
<span style="color:#666; user-select:none;">74</span>  ```shell
<span style="color:#666; user-select:none;">75</span>  % python {bot_script}.py
<span style="color:#666; user-select:none;">76</span>  ```
<span style="color:#666; user-select:none;">77</span>  
<span style="color:#666; user-select:none;">78</span>  You will need to reactivate the venv in your current terminal session
<span style="color:#666; user-select:none;">79</span>  each time you use the bot as follows:
<span style="color:#666; user-select:none;">80</span>  
<span style="color:#666; user-select:none;">81</span>  ```shell
<span style="color:#666; user-select:none;">82</span>  % source venv_{bot_name}/bin/activate
<span style="color:#666; user-select:none;">83</span>  ```
<span style="color:#666; user-select:none;">84</span>  
<span style="color:#666; user-select:none;">85</span>  ### Without a venv
<span style="color:#666; user-select:none;">86</span>  
<span style="color:#666; user-select:none;">87</span>  If you don&#x27;t require a venv, install the requirements and run needed bot as follows:
<span style="color:#666; user-select:none;">88</span>  
<span style="color:#666; user-select:none;">89</span>  ```shell
<span style="color:#666; user-select:none;">90</span>  % pip install -r requirements.txt
<span style="color:#666; user-select:none;">91</span>  % python {bot_script}.py
<span style="color:#666; user-select:none;">92</span>  ```
<span style="color:#666; user-select:none;">93</span>  
<span style="color:#666; user-select:none;">94</span>  **Notes:**
<span style="color:#666; user-select:none;">95</span>  * Make sure the `irc_listen` is the same in config and in bot script.
</pre>
        </div>
        </div>

</div>
</main>
</div>
</div>


</body>
</html>

