Skip to content

Commit 64d75dc

Browse files
committed
Documentation improvements
1 parent 42e7ee0 commit 64d75dc

File tree

2 files changed

+57
-34
lines changed

2 files changed

+57
-34
lines changed

README.md

Lines changed: 56 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -14,22 +14,41 @@ This extension assumes:
1414
[assignment
1515
submissions](https://docs.moodle.org/501/en/Using_Assignment#Downloading_student_submissions).
1616

17-
* That folder has a subfolder for each student.
17+
* That folder has a subfolder for each student submission.
1818

19-
* Each subfolder has a file ending with the suffix `_assignsubmission_onlinetext`
20-
with a link to a remote repository with the student's solution to the assignment; or
21-
it has the actual files with the solution to the assignment.
19+
* Each subfolder has a file ending with the suffix
20+
`_assignsubmission_onlinetext` with a link to a remote repository with the
21+
student's solution to the assignment; or it has the actual files with the
22+
solution to the assignment.
2223

23-
* Teacher has created an `agent.md` file with the GitHub Copilot Custom Agent
24+
In the first case, the assignment in Moodle has been configured to accept
25+
online text only. In the second case, the assignment is configured to accept
26+
files.
27+
28+
* Teacher already has an `.agent.md` file with the GitHub Copilot Custom Agent
2429
for grading students' submissions. This extension will copy the file in the
25-
appropriate location.
30+
appropriate location, ready to be used by grading command. See [Grading Agent
31+
Example](#grading-agent-example) below.
32+
33+
* The provided grading agent creates a `.md` file in each student submission
34+
folder with the feedback or rationale behind the grade. This extension can
35+
delete those files and file names can be configured.
36+
37+
* The provided grading agent creates a `.csv` file in the workspace folder with
38+
a summary of all grades. This extension can delete that file and file name can
39+
be configured.
40+
41+
* The rubric used to evaluate and grade the assignments is provided either in
42+
the grading agent or in a sepparate file referenced by the grading agent. The
43+
rubrics can even be in each student submission -e.g. students cloned or forked
44+
a repo with the rubric in it.
2645

2746
## Features
2847

2948
* The command **Grading Agent: Extract Students' Repositories** looks for files
30-
with the suffix `_assignsubmission_onlinetext` in subfolders and creates a
31-
`students_repos.json` file with the links to the repositories. A `.csv` and a
32-
`.txt` file with the same information are also created.
49+
named `onlinetext.html` in subfolders and creates a `students_repos.json` file
50+
with the links to the repositories. A `.csv` and a `.txt` file with the same
51+
information are also created.
3352

3453
* The command **Grading Agent: Clone Students' Repositories** clones each
3554
repository in a `repo` folder in each subfolder. Links to the repositories are
@@ -39,23 +58,22 @@ This extension assumes:
3958
previously cloned repositories.
4059

4160
* The command **Grading Agent: Open Grading Agent** copies the selected file to
42-
the appropriate location. See [Grading Agent Example](#grading-agent-example)
43-
below.
61+
the appropriate location to be used by the **Grading Agent: Grade Submission**
62+
command. See [Grading Agent Example](#grading-agent-example) below.
63+
64+
* The command **Grading Agent: Configure Chat Auto Approve** configures Visual
65+
Studio Code settings to auto-approve dotnet commands in the GitHub Copilot
66+
chat window.
4467

4568
* The command **Grading Agent: Grade Submission** opens the [Github Copilot chat
4669
window](https://code.visualstudio.com/docs/copilot/chat/getting-started-chat)
4770
and pastes a prompt to use the provided grading agent to grade the opened
48-
submission. The user should send the prompt to GitHub Copilot chat window.
49-
50-
* The command **Grading Agent: Configure Chat Auto Approve** configures Visual
51-
Studio Code settings to auto-approve dotnet commands in the chat window.
71+
submission. The user should send the prompt to GitHub Copilot.
5272

5373
* The command **Grading Agent: Delete Grades** deletes grade files from the
5474
workspace and student folders. These files are generated from the grading
55-
agent, so any name is valid; see the [grading agent
56-
example](#grading-agent-example) below. This extension assumes there is a
57-
`grades.csv` file in the workspace folder and a `GRADE.md`, but names can be
58-
configured; see [configuration](#configuration) below.
75+
agent, and file names can be configured. See [grading agent
76+
example](#grading-agent-example) and [configuration](#configuration) below.
5977

6078
## Requirements
6179

@@ -73,19 +91,18 @@ assignment submission.
7391

7492
Here's a complete grading agent:
7593

76-
```markdown
94+
```text
7795
---
7896
name: 'Grading Agent'
7997
description: 'This agent grades students assignments based on a rubric.'
8098
tools: ["read", "search", "edit", "execute"]
8199
---
82-
83100
# Instructions
84101
85102
You're a teaching assistant in a programming course.
86103
87-
Your task is to grade student assignments based on the rubric in
88-
[this file](../../README.md) to evaluate and calculate points.
104+
Your task is to grade student assignments based on the rubric in the `README.md`
105+
file in each student submission to evaluate and calculate points.
89106
90107
The assignment is in the folder where the currently opened file is located.
91108
@@ -108,30 +125,36 @@ In addition to the rubric:
108125
instructions.
109126
110127
There should be a [grades.csv](../../grades.csv) file, if not, create one. In
111-
that file, add a new line with the student identifier and the grade assigned.
112-
Folder names and student's identifiers are [here](../../students_repos.json)
128+
that file, add a new line with the student's name and identifier, and the grade
129+
assigned. Folder names and student's identifiers are
130+
[here](../../students_repos.json)
113131
114132
In the assignment submission folder, create a GRADE.md file with an explanation
115133
of the score. The language should be Spanish.
116134
```
117135

118136
In order for this grading agent example to work, there should be a `README.md`
119-
file in the folder opened in Visual Studio Code, or a `README.md` in each
120-
subfolder, with the instructions for the assigment given to the students and a
121-
rubric with the grading criteria.
137+
in each subfolder, with the instructions for the assigment given to the students
138+
and a rubric with the grading criteria. The grading agent can be easily adapted
139+
to use a `README.md` file with the rubric in the workspace folder opened in
140+
Visual Studio Code. The rubric can be also included right in the grading agent
141+
file.
122142

123143
References to files used by the grading agent are included as markdown links.
124144

125-
In this example all grades are collected in a `grades.csv` file in the folder
126-
opened in Visual Studio Code; it has the format that Moodle uses to import
127-
grades.
145+
In this example all grades are collected in a `grades.csv` file in the workspace
146+
folder opened in Visual Studio Code; it has the format that Moodle uses to
147+
import grades, but the grading agent can be modified to export in any format;
148+
just use natural langague to describe your format.
128149

129150
The feedback for each submission is generated in a `GRADE.md` file in each
130-
subfolder.
151+
subfolder; again, just use natural language to describe the structure of this
152+
file if needed.
131153

132154
## Configuration
133155

134-
You can customize the grade file names through Visual Studio Code settings:
156+
You can customize the generated grade file names through Visual Studio Code
157+
settings, to match the ones used in your grading agent:
135158

136159
**Workspace configuration**, in `.vscode/settings.json`:
137160
```json

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "gradingagent",
3-
"displayName": "GradingAgent",
3+
"displayName": "Grading Agent",
44
"description": "An extension to automate grading of programming assignments as much as possible",
55
"version": "0.0.1",
66
"publisher": "fmachadopiriz",

0 commit comments

Comments
 (0)