> For the complete documentation index, see [llms.txt](https://enoch.code4tomorrow.org/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://enoch.code4tomorrow.org/2.0.0/commands-reference/setup.md).

# Setup

| Command       | Usage                      | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| ------------- | -------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| setup name    | +setup name \<name>        | <p>Changes a user's nickname on the server to their full name.</p><p><strong>Arguments</strong></p><p><code>name</code> is the name the user used to sign up for C4T classes. For students, this should be the student's name. For parents, this should be the parent's name. For teachers, this should be the teacher's name.</p><p><strong>Important</strong></p><p>This name must match exactly the <em>name you signed up with</em> in order for the setup subcommands to work.</p><p>This command will automatically remove the characters "\[", "]", "<", and ">" from the given display name.</p>                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| setup student | +setup student \[code] ... | <p>Sets up a student's account on the server and displays the result of the setup (if it was successful or not).</p><p><strong>Arguments</strong></p><p><code>code</code> is a unique numerical class code sent via email that represents the class the student is enrolled in (note: you can enter one or more codes separated by spaces).<br>Students only need to enter code(s) if there is another student with the same name as them - Enoch will notify them if this happens.</p><p><strong>Checks</strong></p><p>This command can only be invoked...</p><p>- in the #commands channel</p><p>- in the C4T Classes server</p><p><strong>Important</strong></p><p>Before using this command, you must use <code>+setup name \<name></code>to set your display name to the name you signed up with. This must match EXACTLY in order for the verification process to work.</p><p><strong>Examples</strong><br>+setup student</p><p>+setup student 1111</p><p>+setup student 2111 3111</p><p>Do <em><strong>NOT</strong></em> do this: +setup student @1111</p> |
| setup parent  | +setup parent \[code] ...  | <p>Sets up a parent's account on the server and displays the result of the setup (if it was successful or not).</p><p><strong>Arguments</strong></p><p><code>code</code> is a unique numerical class code sent via email that represents the class the parent's child is enrolled in (note: you can enter one or more codes separated by spaces). <code>codes</code> is optional. You won't have to input it unless Enoch tells you to.</p><p><strong>Checks</strong></p><p>This command can only be invoked...</p><p>- in the #commands channel</p><p>- in the C4T Classes server</p><p><strong>Important</strong></p><p>Before using this command, you must use <code>+setup name \<name></code></p><p>to set your display name to the name you signed up with. This must match EXACTLY in order for the verification process to work.</p><p><strong>Examples</strong><br>+setup parent</p><p>+setup parent 1111</p><p>+setup parent 2111 3111</p><p>Do <em><strong>NOT</strong></em> do this: +setup parent @1111</p>                                          |
| setup teacher | +setup teacher \[code] ... | <p>Sets up a teacher's account on the server and displays the result of the setup (if it was successful or not).</p><p><strong>Arguments</strong></p><p><code>code</code> is a unique numerical class code that represents the class the teacher is teaching (note: you can enter one or more codes separated by spaces). <code>codes</code> is optional. You won't have to input it unless Enoch tells you to.</p><p><strong>Checks</strong></p><p>This command can only be invoked...</p><p>- in the #commands channel</p><p>- in the C4T Classes server</p><p> <strong>Important</strong></p><p>Before using this command, you must use <code>+setup name \<name></code></p><p>to set your display name to the name you signed up with. This must match EXACTLY in order for the verification process to work.</p><p><strong>Examples</strong><br>+setup teacher</p><p>+setup teacher 1111</p><p>+setup teacher 2111 3111</p><p>Do <em><strong>NOT</strong></em> do this: +setup teacher @1111</p>                                                             |
| setup member  | +setup member \<dept>      | <p>Sets up a C4T member on the Code 4 Tomorrow server by adding the member's primary department role</p><p><strong>Arguments</strong></p><p><code>dept</code> is the C4T member's primary department</p><p><strong>Valid Department Names</strong> (case insensitive)</p><p>outreach</p><p>internal affairs</p><p>classes</p><p>coco</p><p><strong>Checks</strong></p><p>This subcommand can only be used on the Code 4 Tomorrow server</p>                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| setup addproj | +setup addproj \<project>  | <p>Adds a project role to the user</p><p><strong>Arguments</strong></p><p><code>project</code> is a C4T member's project group</p><p><strong>Valid Project Names</strong> (case insensitive)</p><p>partnerships</p><p>social media</p><p>website design</p><p>public relations</p><p>documentations</p><p>volunteer management</p><p>finance</p><p>java</p><p>python</p><p>web development</p><p>scratch</p><p>curriculum expansion</p><p>class scheduling</p><p>coco project</p><p><strong>Checks</strong></p><p>This subcommand can only be used on the Code 4 Tomorrow server.</p><p>The user must have at least 1 department role (see <code>setup member</code>).</p><p><strong>IMPORTANT</strong></p><p>You must use the <code>setup member</code> command to add a department role before using this command.</p><p><strong>Aliases:</strong> add\_proj, addproject, add\_project</p>                                                                                                                                                                      |
| setup done    | +setup done                | <p>Checks if a user is done with setup on the Code 4 Tomorrow server.</p><p>If the user is done (they have at least 1 department role and at least 1 project role), then the Unverified role is removed from the user and they are sent a setup complete DM. Otherwise, they are sent a setup fail DM.</p><p><strong>Checks</strong></p><p>This subcommand can only be used on the Code 4 Tomorrow server</p>                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://enoch.code4tomorrow.org/2.0.0/commands-reference/setup.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
