Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
92 changes: 92 additions & 0 deletions templates/lostfound-match-agent/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,92 @@
# LostFound Match Agent

## Overview

LostFound Match Agent is an AI workflow that compares lost item reports with found item reports and helps administrators identify likely matches.

It is designed for campuses, airports, metro stations, malls, hotels, and other public places where lost and found reports are often handled manually.

## Problem

Lost and found teams often receive incomplete, messy, or differently written item descriptions.

For example, one user may report:

> Black leather wallet lost near library with student ID.

Another person may report:

> Dark wallet found near reading room with college card inside.

Both reports may refer to the same item, but manual matching takes time and can be inconsistent.

## Solution

This agent compares the lost item report and found item report using:

- item type
- color
- brand or material
- unique identifiers
- location similarity
- date/time proximity
- semantic similarity
- conflicting details

It then returns a structured match decision with a score, reasoning, verification questions, and next action.

## Input

```json
{
"lost_item_description": "Black leather wallet lost near library. It had my student ID card and some cash.",
"found_item_description": "Dark wallet found near reading room with a college ID card inside.",
"lost_location": "Library",
"found_location": "Reading room",
"lost_date": "2026-05-10",
"found_date": "2026-05-10"
}
```

## Output

```json
{
"match_score": 85,
"decision": "Likely Match",
"reason": "Both reports describe a dark wallet found near similar academic locations and mention an ID card.",
"matching_signals": [
"Both reports mention a wallet",
"Both reports mention a dark or black color",
"Both reports mention an ID card",
"The locations are similar"
],
"conflicting_signals": [
"The found report does not mention cash"
],
"verification_questions": [
"What name is written on the ID card?",
"How much cash was inside?",
"Does the wallet have any brand or unique mark?"
],
"next_action": "Send this case to an admin for manual verification before returning the item."
}
```

## Use Cases

- Campus lost and found desks
- Airport lost property departments
- Metro station lost and found counters
- Mall and hotel security teams
- Lost and found management platforms

## Why this matters

The agent does not replace human verification. It helps admins quickly prioritize likely matches and reduce manual effort.

## Assumptions

- The match score is a recommendation, not a final ownership decision.
- Valuable or sensitive items should always be manually verified.
- The quality of the result depends on the quality of the descriptions provided.
19 changes: 19 additions & 0 deletions templates/lostfound-match-agent/config.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
{
"name": "LostFound Match Agent",
"slug": "lostfound-match-agent",
"description": "Compares lost item reports with found item reports and returns a structured match recommendation with score, reasoning, verification questions, and next action.",
"category": "workflow-automation",
"tags": [
"lost-and-found",
"matching",
"automation",
"json",
"admin"
],
"author": {
"name": "Rewant Anand",
"github": "Rewant05"
},
"version": "1.0.0",
"type": "template"
}
32 changes: 32 additions & 0 deletions templates/lostfound-match-agent/inputs.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
{
"lost_item_description": {
"type": "string",
"required": true,
"description": "Description of the lost item reported by the user."
},
"found_item_description": {
"type": "string",
"required": true,
"description": "Description of the found item reported by another user or admin."
},
"lost_location": {
"type": "string",
"required": false,
"description": "Location where the item was lost."
},
"found_location": {
"type": "string",
"required": false,
"description": "Location where the item was found."
},
"lost_date": {
"type": "string",
"required": false,
"description": "Date when the item was lost."
},
"found_date": {
"type": "string",
"required": false,
"description": "Date when the item was found."
}
}
39 changes: 39 additions & 0 deletions templates/lostfound-match-agent/meta.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
{
"title": "LostFound Match Agent",
"description": "An AI template that compares lost item reports with found item reports and generates a structured match recommendation.",
"use_case": "Lost and found item matching for campuses, airports, metro stations, malls, hotels, and public institutions.",
"problem": "Lost and found teams often receive incomplete or differently written item descriptions, making manual matching slow and inconsistent.",
"solution": "The agent compares item descriptions, locations, dates, and unique identifiers to generate a match score, reasoning, verification questions, and next action.",
"input_example": {
"lost_item_description": "Black leather wallet lost near library. It had my student ID card and some cash.",
"found_item_description": "Dark wallet found near reading room with a college ID card inside.",
"lost_location": "Library",
"found_location": "Reading room",
"lost_date": "2026-05-10",
"found_date": "2026-05-10"
},
"output_example": {
"match_score": 85,
"decision": "Likely Match",
"reason": "Both reports describe a dark wallet found near similar academic locations and mention an ID card.",
"matching_signals": [
"Both reports mention a wallet",
"Both reports mention a dark or black color",
"Both reports mention an ID card",
"The locations are similar"
],
"conflicting_signals": [
"The found report does not mention cash"
],
"verification_questions": [
"What name is written on the ID card?",
"How much cash was inside?",
"Does the wallet have any brand or unique mark?"
],
"next_action": "Send this case to an admin for manual verification before returning the item."
},
Comment on lines +15 to +34
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🧹 Nitpick | 🔵 Trivial | ⚡ Quick win

Agent, consider documenting the output contract.

The output example demonstrates a well-structured match result with match_score, decision, reason, matching_signals, conflicting_signals, verification_questions, and next_action. However, there's no formal output schema (like an outputs.json file) defining types, constraints, or required fields for this structure.

While not critical for a template, a formal output schema would help integrators validate agent responses and catch breaking changes.

📋 Proposed addition: outputs.json schema

Consider adding templates/lostfound-match-agent/outputs.json:

{
  "match_score": {
    "type": "number",
    "required": true,
    "description": "Match confidence score between 0-100"
  },
  "decision": {
    "type": "string",
    "required": true,
    "description": "Match decision category (e.g., Likely Match, Possible Match, No Match)"
  },
  "reason": {
    "type": "string",
    "required": true,
    "description": "Human-readable explanation of the decision"
  },
  "matching_signals": {
    "type": "array",
    "required": true,
    "description": "List of signals supporting the match"
  },
  "conflicting_signals": {
    "type": "array",
    "required": true,
    "description": "List of signals contradicting the match"
  },
  "verification_questions": {
    "type": "array",
    "required": true,
    "description": "Questions to verify ownership"
  },
  "next_action": {
    "type": "string",
    "required": true,
    "description": "Recommended next step for the administrator"
  }
}
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@templates/lostfound-match-agent/meta.json` around lines 15 - 34, Add a formal
output schema file describing the agent's response contract to validate the
fields shown in output_example: create an outputs.json that defines each
top-level property (match_score, decision, reason, matching_signals,
conflicting_signals, verification_questions, next_action) with types,
required=true where appropriate, descriptions, and constraints (e.g.,
match_score numeric 0–100, arrays of strings for signals/questions). Ensure the
schema keys exactly match the example in meta.json so integrators can validate
agent responses and catch breaking changes.

"author": {
"name": "Rewant Anand",
"github": "Rewant05"
}
}
Loading