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

# 空间与题目 {#spaces}

空间是老师或组织发布题目的地方：里面有题目、公告，以及管理员用来管理它的一组页面。

参与者可以领取空间里的题目并提交，在从题目建出的项目里和芝士一起完成。

## 加入空间 {#join}

1. 点左侧导航最上面的「首页」，在侧栏「空间」下面点「用邀请码加入」。手机上在底栏「首页」里。
2. 填写「邀请码」，点「加入」。

完成后：直接进入这个空间的题目列表；以后它也列在首页侧栏的「空间」下面。

## 找到题目 {#find}

进入空间后，左侧栏最上面一行是空间名，点前面的「‹」回到首页。下面是：

| 左侧栏 | 用途 |
|---|---|
| 公告 | 管理员发布的通知，置顶的排在最前；过了到期日的收进「已到期」 |
| 全部题目、各个分类 | 这个空间里已经上板的题目，可以按分类看，顶部可以「在当前空间中搜索」 |

题目列表顶部有三个筛选：

- 「全部」：这个空间里所有已经上板的题目。
- 「我参与的」：你已经领取的题目。
- 「我发布的」：你发布的题目，包括待审核和未通过的，以及各自的报名与提交情况。

同一行还有话题、搜索和排序。话题可以选好几个，列出的是带其中任一个话题的题目；搜索输完按回车。选「我发布的」后，话题和排序换成「只看待处理」，点它只列有报名待审核或提交待评审的题目。

三个筛选和分类都写在地址里，复制地址发给别人，打开的是同一个列表。

置顶且没到期的公告也列在题目列表顶上，点一行打开公告页。管理员发布公告时，空间里的其他人会在首页「动态」里收到一条通知；之后修改公告不再通知。

点一道题目打开题目页：

- 最上面是题目名、状态（报名中、已截止等）、发布者和一句简介。这一页的主操作在同一行右边：没领取时是「领取这道题」，领取后是「提交作业」或「提交新版本」；旁边是「问芝士」，见[问芝士](#ask)。
- 下面分页签：「说明」是题目详情正文、视频（只支持 Bilibili）和材料；领取后多一个「我的提交」。
- 「说明」「我的提交」右边有一栏：领取后先是「我的进度」（用哪个团队领的、交到第几版、还剩几天、从这道题建的项目），下面是「题目信息」（形式、截止、提交期限、提交次数、难度、已领取人数）。
- 你是这道题的发布者或空间管理员时，还有「领取者」和「数据」两个页签，见[管理领取者](#participants)。

## 问芝士 {#ask}

在题目页点「问芝士」，可以问关于这道题的问题，比如做这道题要先会什么、从哪里入手。宽屏上面板停在右边，手机上从底部升起。

- 芝士读过这道题的说明、要求和题目信息，读不到附件。回答由 AI 生成，可能有误，以题目原文和出题人的说明为准。
- 对话会保存，只有你自己看得到。打开面板时接着这道题上次的对话；点面板顶上的标题可以换到这道题的另一段对话接着聊，笔形按钮开一段新对话。
- 每次提问扣你的个人额度，见[个人额度](https://docs.okcheese.com/quota#personal)。

## 领取题目 {#claim}

领取题目要填一次参与确认；确认后报名进入待审核。

题目页顶部提示条件不满足时，先按下面处理，再领取：

| 提示 | 怎么办 |
|---|---|
| 这道题需要实名信息才能参与 | 点「前往填写」补全实名信息 |
| 你需要创建或加入一个团队才能参与这道题 | 团队任务要以团队身份领取，先建团队或加入别人的团队，见[团队](https://docs.okcheese.com/teams#teams) |
| 这道题要求团队至少 / 最多 N 人 | 调整团队人数 |
| 这道题的名额已满 | 这道题不能再领取了 |
| 团队里有人已经通过别的团队领了这道题 | 一个人一道题只能领一次。换一支队里没人领过这道题的团队 |

1. 在题目页点「领取这道题」。
2. 在「参与确认」对话框里填手机号或邮箱（至少一项）和「申请理由」，点「确认参与」。团队题先选代表参与的队伍。

![「参与确认」对话框：联系方式至少填一项，下面是申请理由和「确认参与」按钮](https://docs.okcheese.com/images/task-join-dialog.jpg)

完成后：报名进入「待审核」。发布者在「领取者」页签里点「批准」之后，题目页才会出现「提交作业」。领取后想放弃，在「我的进度」右上角的「⋯」里点「退出这道题」。

## 从题目创建项目 {#project}

领取之后，题目页右边「我的进度」里列出从这道题目建出来的项目，点名字直接进。要新建时点「用这道题新建项目」；已经有了再点，会另建一个新项目，一般不需要。项目自带话题和芝士，怎么交代任务见[快速开始](https://docs.okcheese.com/quickstart#talk)。

## 提交 {#submit}

点题目页的「提交作业」，按表单填写、上传作品，点「提交」。详见[提交](https://docs.okcheese.com/submissions#submit)。

## 新建空间 {#create}

1. 打开「空间」页，点「新建空间」。
2. 填「空间名称」，选填「简介」和「头像」，点「提交审核」。
3. 弹出「这是你的邀请码」，点「进入空间」。

完成后：平台管理员审核通过后，才能发布题目、邀请成员。你是这个空间的所有者，左侧栏多出「管理」一段：「待审核」「成员」「数据」「设置」。「待审核」旁边的数字是等待审核的题目数。

「设置」页分成「基本信息」「分类与话题」「题目模板」「邀请码」「邮箱域名组」「给 AI 队友的指导」「资料库」七栏。空间的名称、简介和头像在「基本信息」里改；所有者还能在这一栏删除空间。

## 邀请码 {#invite-codes}

邀请码在左侧栏「管理」→「设置」→「邀请码」里管理。

- 点「新建」时可以设定「可用人数」和「有效期至」（不填表示永不过期），还可以写一句说明。
- 已有的码可以「调整」人数和有效期，也可以「撤销」；撤销要点两下，撤销后这个码对所有人失效。
- 码是共享的，贴到公开场合等于谁拿到都能加入。

## 成员 {#members}

左侧栏「管理」→「成员」列出这个空间的所有者、管理员和成员，以及每个人是用哪个邀请码加入的。所有者可以把成员设为管理员、取消管理员，也可以把所有者转让给一位管理员；转让后自己成为管理员。

## 资料库 {#space-library}

左侧栏「管理」→「设置」→「资料库」放这块板共用的文件：课件、参考答案、脚手架。这块板里的题目和 AI 队友共用同一批。

- 点「上传资料」传一份，同时选「谁能看」。
- 「所有成员」：这块板上的人都看得见、都能下载。「仅管理员」：只有管理员看得见、能下载；成员项目里的 AI 队友也读不到，[给 AI 队友的指导](#teaching)里也勾不到它。
- 只有管理员能上传、改可见范围和移除；成员只能看和下载。
- 移除之后，这份文件就不再出现在成员那边的清单里。

## 发布题目 {#publish}

空间里的人都可以发布题目，发布后要经所有者或管理员审核才对参与者可见。

1. 进入发布页：在「全部题目」页点「发布题目」，或直接打开 `/spaces/<空间号>/tasks/publish`。
2. 空间配过题目模板时，先到「选择题目模板」：选一个模板，或点「从空白题目开始」。
3. 页头右边选「手写一道」或「从 PDF 生成」。
4. 手写时按下表填表单，填完点右边的「提交审核」。

| 卡片 | 要填什么 |
|---|---|
| 基本信息 | 「题目名称」、「参与者类型」（个人/团队）、「题目难度」、「参与者人数限制」或「队伍数量限制」；团队题还要选「队伍成员锁定策略」并填「最团队伍人数」「最大队伍人数」 |
| 基本信息里的开关 | 「允许多次提交」：勾上学生才能在截止前反复交；「允许编辑提交」：勾上已交的那一版可以改 |
| 时间设置 | 「报名开始日期」（留空表示不限制）、「报名截止日期」、「默认完成期限」（领取后多少天，通过报名时按它算截止时间） |
| 实名信息要求 | 开启后参与者必须补全实名信息才能参与 |
| 权限设置 | 用域名组限制只有指定邮箱域名的用户能看到和参与 |
| 题目描述 | 题目正文，可以带视频链接 |
| 给 AI 队友的指导（默认收起，点开才填） | 这道题自己的要求，见[给 AI 队友的指导](#teaching)。留空就用整块板的默认 |

右边「提交前」列出表单还拦着你的地方，全部解决后「提交审核」才能点。

完成后：页面转到题目列表的「我发布的」，新题目在里面，状态是待审核，等所有者或管理员在「管理」→「待审核」里通过。

有 PDF 题目时，两种做法：

- 「手写一道」页顶部的「PDF 快速发布」：上传题目 PDF（不超过 15MB），点「解析预览」，确认识别出的草稿（一次最多 20 道），在下方表单统一填发布参数后批量发布。
- 「从 PDF 生成」：上传后逐条改标题和题干、勾掉不要的，确认后就地给出回执。

## 给 AI 队友的指导 {#teaching}

这是写给 AI 队友的要求，学生看不到原文。两个地方可以写：

- **整块板的默认**：左侧栏「管理」→「设置」→「给 AI 队友的指导」。从这块板的题建出的项目，AI 队友开新对话时读它。
- **单道题**：发布页底部的「给 AI 队友的指导」，只对这道题生效，盖过整块板的默认。

一份指导填这些：

| 格子 | 说明 |
|---|---|
| 对 AI 的要求 | 这段话直接进 AI 队友的系统提示词。可以写 `{current_week}`、`{allowed_topics}`、`{avoid_in_code}`，发送时替换成同一份指导里填的内容。留空表示这一层不加任何要求。旁边的「用这段默认要求」把一段现成的陪练要求填进去。 |
| 当前周次 | 上面的 `{current_week}` 取这个值；留空表示不设。 |
| 参考资料 | 从这块板的[资料库](#space-library)里勾，不用填编号。留空表示不带课件。 |
| 高级选项 | 「目前的内容范围」「暂时不该用到的写法」「知识条目编号」。 |

存过一次就是**整份**算数，不逐格合并：空着的格子表示「这一层不要求」，不会盖掉别层写的值。四层依次是空间 → 项目集 → 题目 → 项目，合成出哪一份、它来自哪一层，在领取这道题、从这道题建项目时列出来。

参考资料里的某一份文件后来被移除了，那一条引用就不算数：它不进学生的提示词，界面上会单列出来让你去掉。

## 审核题目 {#audit}

发布的题目要先过审，参与者才看得到。

1. 打开「管理」→「待审核」。
2. 点题目展开详细信息，选「通过」或「驳回」；驳回要填「驳回理由」。

![「待审核题目」页：待审核的题目展开显示详细信息，底部是「通过」和「驳回」](https://docs.okcheese.com/images/task-audit.jpg)

完成后：通过的题目出现在「全部题目」里。未通过时，题目页显示「审核未通过」和驳回理由。

## 管理领取者 {#participants}

题目页的「领取者」页签是一张表，每人一行：领取时间、状态、最新提交和截止时间。上面按「全部」「待批准领取」「待评审」「已通过」筛选，也可以按名字搜索。被拒绝的申请不算在「全部」里，有的时候多出一格「已拒绝」。点名字展开这个人的实名信息、联系方式和团队成员。

| 操作 | 在哪一行 | 说明 |
|---|---|---|
| 批准 | 待批准领取 | 报名生效，系统按「提交期限」给他设截止时间 |
| 拒绝 | 待批准领取 | 可以填写原因（选填） |
| 评审 | 待评审 | 打开他的提交，看完内容再通过或退回 |
| 查看提交 | 交过作业的 | 看他的每一版提交和评审结果 |
| 设置截止时间 | 已批准的，在「⋯」里 | 单独改这个人的提交截止时间 |

「数据」页签是这道题的领取人数、提交与通过情况、领取走势和团队构成。
