endsession
Document and finalize study sessions with a structured, multi-stage workflow. Track academic progress, update assignment statuses, define new concepts, and link knowledge to courses for organized learning management.
Instructions
A multi-stage tool for documenting study sessions, tracking academic progress, recording concepts learned, updating assignment status, and enriching the student knowledge graph.
When to use this tool: Only use this tool when the user explicity requests it or provides explicit approval.
Key features:
- Provides a structured, multi-stage workflow for session documentation
- Records concepts learned in the knowledge graph
- Updates assignment status using has_status relations (not_started, in_progress, complete)
- Updates assignment priorities using has_priority relations (low, high)
- Establishes sequential relationships between concepts using follows relations
- Creates connections between concepts and courses
- Updates course status metadata
- Creates new concept entities for topics you've studied
- Maintains session continuity with unique session IDs
- Supports revision of previous stages when needed
- Offers a comprehensive assembly stage that consolidates all session information
- Organizes your academic knowledge into a coherent structure
The endsession tool uses a sequential, multi-stage approach with 6 typical stages:
- Summary Stage: Records basic session information
- Concepts Learned Stage: Documents specific concepts studied
- Assignment Updates Stage: Records status and priority changes to assignments
- New Concepts Stage: Defines new concept entities to add
- Course Status Stage: Updates the overall course status
- Assembly Stage: Consolidates all information and finalizes the session record
Parameters explained:
- sessionId: Required - Unique identifier for the study session
- Obtained from the startsession tool
- Example: "stu_1234567890_abc123"
- stage: Required - Current stage of the endsession workflow
- Accepts: "summary", "conceptsLearned", "assignmentUpdates", "newConcepts", "courseStatus", or "assembly"
- Each stage has specific data requirements and processing logic
- stageNumber: Required - The sequence number of the current stage
- Starts at 1 and typically progresses through 6 stages
- Used to track progress through the session documentation workflow
- totalStages: Required - Total number of stages planned for this workflow
- Typically 6 for the complete workflow
- Provides context for the progress within the overall process
- analysis: Optional - Text analysis or observations for the current stage
- Descriptive text explaining the work done in this stage
- Example: "Analyzed progress on studying for the final exam"
- stageData: Optional - Stage-specific structured data
- Structure varies by stage type:
- summary: { summary: "Session summary text", duration: "2 hours", course: "CourseName" }
- conceptsLearned: { concepts: ["Concept A", "Concept B", "Concept C"] }
- assignmentUpdates: { updates: [{ name: "Assignment1", status: "complete", priority: "high" }, { name: "Assignment2", status: "in_progress" }] }
- newConcepts: { concepts: [{ name: "NewConcept1", description: "Definition of the concept", follows: "PriorConcept" }] }
- courseStatus: { courseStatus: "in_progress", courseObservation: "Making good progress" }
- assembly: No stageData needed - automatically assembled from previous stages
- nextStageNeeded: Required - Whether additional stages are needed after this one
- Boolean value (true/false)
- Set to false on the final stage to complete the session
- isRevision: Optional - Whether this is revising a previous stage
- Boolean value (true/false)
- Default: false
- revisesStage: Optional - If revising, which stage number is being revised
- Required when isRevision is true
- Indicates which previous stage is being updated
When the endsession workflow completes (assembly stage with nextStageNeeded: false), the tool performs these updates:
- Concept Entities: Creates entities for each concept learned and links them to the course
- Assignment Status Updates: Updates assignment status via has_status relations (not_started, in_progress, complete)
- Assignment Priority Updates: Updates assignment priority via has_priority relations (low, high)
- Sequential Concept Relationships: Establishes follows relations between concepts when specified
- Course Status Update: Updates the course status via has_status relation, adds an updated timestamp, and records observations
- New Concept Creation: Creates new concept entities, links them to the course, and establishes any sequential relationships
- Session Recording: Marks the session as completed in persistent storage
Return information:
- JSON response with the following structure:
- success: Boolean indicating whether the operation succeeded
- stageCompleted: The stage that was just completed
- nextStageNeeded: Whether more stages are required
- stageResult: The processed result of the current stage
- endSessionArgs: (Only in assembly stage) Consolidated arguments for the session
- sessionRecorded: (Final stage only) Whether the session was recorded
- summaryMessage: (Final stage only) Formatted summary of all recorded information
- error: (Only on failure) Error message describing the issue
- Error information when operation fails
Status and Priority Values:
- Valid status values: not_started, in_progress, complete
- Valid priority values: low, high
You should:
- Complete all stages in order for comprehensive session documentation
- Provide specific details in each stage for accurate knowledge graph updates
- Be precise about assignment names to ensure they match existing assignments
- Use valid status values (not_started, in_progress, complete) when updating assignments
- Use valid priority values (low, high) when specifying assignment importance
- Specify sequential relationships between concepts when appropriate
- Use clear, descriptive names for any new concepts
- Include relevant observations for course status updates
- If making a revision, specify which stage is being revised
- Only mark nextStageNeeded as false on the final assembly stage
- Review the final summary message to confirm all session details were recorded properly
- Use the unique session ID consistently across all stages
Input Schema
Name | Required | Description | Default |
---|---|---|---|
analysis | No | Text analysis or observations for the current stage | |
isRevision | No | Whether this is revising a previous stage | |
nextStageNeeded | Yes | Whether additional stages are needed after this one (false for final stage) | |
revisesStage | No | If revising, which stage number is being revised | |
sessionId | Yes | The unique session identifier obtained from startsession | |
stage | Yes | Current stage of analysis: 'summary', 'conceptsLearned', 'assignmentProgress', 'questions', 'nextSteps', or 'assembly' | |
stageData | No | Stage-specific data structure - format depends on the stage type: - For 'summary' stage: { summary: "Session summary text", duration: "2 hours", focus: "CourseName" } - For 'conceptsLearned' stage: { concepts: ["Concept A", "Concept B", "Concept C"] } - For 'assignmentProgress' stage: { assignments: [{ name: "Assignment1", status: "completed" }, { name: "Assignment2", status: "in_progress" }] } - For 'questions' stage: { questions: ["Question about topic X", "Question about concept Y"] } - For 'nextSteps' stage: { nextSteps: ["Review chapter 7", "Complete practice problems", "Attend office hours"] } - For 'assembly' stage: no stageData needed - automatic assembly of previous stages | |
stageNumber | Yes | The sequence number of the current stage (starts at 1) | |
totalStages | Yes | Total number of stages in the workflow (typically 5 for standard workflow) |