{"about":{"site":"https://codewithpapers.app","non_affiliation":"Code with Papers and Syntology are not affiliated with, endorsed by, or sponsored by Papers with Code, Meta, or the pwc-archive mirror.","licence":"CC BY-SA 4.0","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","attribution":"https://codewithpapers.app/attribution","modified":"archive material modified by Syntology; see the attribution page"},"url":"/paper/arxiv-2602-13807","title":"AnomaMind: Agentic Time Series Anomaly Detection with Tool-Augmented Reasoning","arxiv_id":"2602.13807","date":"2026-02-14","proceeding":null,"authors":["Xiaoyu Tao","Yuchong Wu","Mingyue Cheng","Ze Guo","Tian Gao"],"abstract":"Time series anomaly detection is critical in many real-world applications, where effective solutions must localize anomalous regions and support reliable decision-making under complex settings. However, most existing methods frame anomaly detection as a purely discriminative prediction task with fixed feature representations, rather than an evidence-driven diagnostic process. As a result, they often struggle when anomalies exhibit strong context dependence, diverse patterns, or domain shifts across datasets. To address these challenges, we propose AnomaMind, an agentic time series anomaly detection framework that reformulates anomaly detection as a sequential decision-making process. AnomaMind operates through a coarse-to-fine workflow that first localizes suspicious intervals, then constructs diagnostic evidence through tool interaction, and finally refines anomaly decisions through self-reflection. The workflow is supported by a toolkit box that combines knowledge memory and numerical diagnostics: visual anomaly patterns mined from training data and domain knowledge provide contextual guidance, while statistical, value-based, change-based, and region-level operators provide measurable evidence for verification. AnomaMind further adopts a hybrid inference mechanism in which general-purpose models handle flexible reasoning, tool invocation, and refinement, while a detection-specific policy is optimized with rule-based rewards for parsable outputs, F1-score alignment, and false-positive control. Extensive experiments under both in-domain and cross-domain settings demonstrate that AnomaMind consistently improves anomaly detection performance and enhances generalization across heterogeneous anomaly patterns, validating the effectiveness of tool-augmented reasoning for anomaly detection. The code is available at https://github.com/Xiaoyu-Tao/AnomaMind-TS.","url_abs":"https://arxiv.org/abs/2602.13807","url_pdf":"https://arxiv.org/pdf/2602.13807","source":{"archive":null,"snapshot":"2025-07-28","note":"not in the Papers with Code archive (frozen at the snapshot)","row_kind":"graph","title_abstract_authors_date":"arXiv metadata, CC0 1.0 (https://info.arxiv.org/help/license)"},"code_links":[],"tasks":[],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2602.13807","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2602.13807"}},"developers":"https://syntology.ai/developers","read_at":"2026-09-24T18:15:14+00:00","read_at_is":"when the build read Syntology's graph, not when any sample ran","claim":"Per-sample execution status on synthesized fixtures; not a correctness claim about the paper. Samples come from repositories linked to the paper, official or community; repo_kind says which.","repos":[{"mentioned_in_github":null,"is_official":null,"provenance":"deterministic:regex_extraction","mentioned_in_paper":null,"url":"https://github.com/Xiaoyu-Tao/AnomaMind-TS","reach":null}],"summary":{"unverified":7},"by_repo_kind":{"found_in_text":{"samples":7,"ran":0,"repositories":1}},"repo_kind_vocabulary":{"official":"The archive marks this repository official for the paper","named_in_paper":"The archive records that the paper mentions this repository; it is not marked official","listed":"In the archive's code links for this paper, not marked official and not recorded as mentioned in the paper","found_in_text":"Syntology found this repository in the paper's own text; whether it is the authors' implementation is not asserted","community":"Not in the archive's code links for this paper; a community repository Syntology harvested"},"n_pointer_only_for_licence":7,"samples":[{"code_sha256_prefix":"7c2ba1ee387946e9","entry":"f1_reward","repo":"Xiaoyu-Tao/AnomaMind-TS","repo_kind":"found_in_text","path":"src/AnomaMind/core/reward.py","file_url":"https://github.com/Xiaoyu-Tao/AnomaMind-TS/blob/HEAD/src/AnomaMind/core/reward.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NOASSERTION","inline_ok":false,"mcp_get_code":{"code_sha256":"7c2ba1ee387946e9"}},{"code_sha256_prefix":"cad90f32e4006aa2","entry":"intervals_to_set","repo":"Xiaoyu-Tao/AnomaMind-TS","repo_kind":"found_in_text","path":"src/AnomaMind/core/reward.py","file_url":"https://github.com/Xiaoyu-Tao/AnomaMind-TS/blob/HEAD/src/AnomaMind/core/reward.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NOASSERTION","inline_ok":false,"mcp_get_code":{"code_sha256":"cad90f32e4006aa2"}},{"code_sha256_prefix":"ae59a0fd913390d0","entry":"load_segment_meta","repo":"Xiaoyu-Tao/AnomaMind-TS","repo_kind":"found_in_text","path":"src/AnomaMind/core/utils.py","file_url":"https://github.com/Xiaoyu-Tao/AnomaMind-TS/blob/HEAD/src/AnomaMind/core/utils.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NOASSERTION","inline_ok":false,"mcp_get_code":{"code_sha256":"ae59a0fd913390d0"}},{"code_sha256_prefix":"c899bd24b1582d49","entry":"meta_indexes_global_series","repo":"Xiaoyu-Tao/AnomaMind-TS","repo_kind":"found_in_text","path":"src/AnomaMind/core/utils.py","file_url":"https://github.com/Xiaoyu-Tao/AnomaMind-TS/blob/HEAD/src/AnomaMind/core/utils.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NOASSERTION","inline_ok":false,"mcp_get_code":{"code_sha256":"c899bd24b1582d49"}},{"code_sha256_prefix":"941f15a5c228ad73","entry":"parse_detector_answer_text","repo":"Xiaoyu-Tao/AnomaMind-TS","repo_kind":"found_in_text","path":"src/AnomaMind/core/finalize.py","file_url":"https://github.com/Xiaoyu-Tao/AnomaMind-TS/blob/HEAD/src/AnomaMind/core/finalize.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NOASSERTION","inline_ok":false,"mcp_get_code":{"code_sha256":"941f15a5c228ad73"}},{"code_sha256_prefix":"94fd7540ffc5c43c","entry":"resolve_dataset_root","repo":"Xiaoyu-Tao/AnomaMind-TS","repo_kind":"found_in_text","path":"src/AnomaMind/core/utils.py","file_url":"https://github.com/Xiaoyu-Tao/AnomaMind-TS/blob/HEAD/src/AnomaMind/core/utils.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NOASSERTION","inline_ok":false,"mcp_get_code":{"code_sha256":"94fd7540ffc5c43c"}},{"code_sha256_prefix":"5ed7ae732e853625","entry":"reward","repo":"Xiaoyu-Tao/AnomaMind-TS","repo_kind":"found_in_text","path":"src/AnomaMind/core/reward.py","file_url":"https://github.com/Xiaoyu-Tao/AnomaMind-TS/blob/HEAD/src/AnomaMind/core/reward.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NOASSERTION","inline_ok":false,"mcp_get_code":{"code_sha256":"5ed7ae732e853625"}}]},"arxiv_metadata":{"licence":"arXiv metadata, CC0 1.0 (https://info.arxiv.org/help/license)","fields":["title","abstract","authors","date"],"primary_category":"cs.LG","source":"arxiv_2026.jsonl"},"syntology_extracted_results":{"kind":"leaderboard_placements","source":"Syntology's leaderboard-shaped extractor over the paper's own arXiv-HTML tables: a model pointed at a cell, the number was read from that cell and checked against the board's metric, dataset, split and scale, and an independent check accepted the entry; not reviewed by the paper's authors or the archive's editors","extractor_model":"global.anthropic.claude-sonnet-4-5-20250929-v1:0","verifier_model":null,"prompt_sha":"fa63d4bb9d755694","coverage":{"sentence":"Syntology has checked 6,264 of the 9,581 papers on this site that are newer than the archive; results from the others appear after they are checked.","papers_newer_than_archive":9581,"papers_checked":6264},"entries":[],"not_placed":{"boards":0,"rejected_by_independent_check":0,"refused_by_a_rule":0,"check_did_not_answer":0,"proposed_without_a_cell":0,"declined_by_site":0}}}