{"id":50878376,"url":"https://github.com/automan-lang/AutoMan","last_synced_at":"2026-07-03T02:01:16.795Z","repository":{"id":3044998,"uuid":"4066128","full_name":"automan-lang/AutoMan","owner":"automan-lang","description":"Human-Computation Runtime","archived":false,"fork":false,"pushed_at":"2024-03-22T17:26:44.000Z","size":81179,"stargazers_count":49,"open_issues_count":16,"forks_count":12,"subscribers_count":8,"default_branch":"master","last_synced_at":"2026-06-23T02:03:54.943Z","etag":null,"topics":["automan","crowdsourcing","scala"],"latest_commit_sha":null,"homepage":"https://docs.automanlang.org","language":"Scala","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/automan-lang.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2012-04-18T17:07:56.000Z","updated_at":"2026-06-04T08:24:47.000Z","dependencies_parsed_at":"2024-01-16T10:37:16.142Z","dependency_job_id":"8578a96d-b857-44cd-9002-35f1a1c1d34a","html_url":"https://github.com/automan-lang/AutoMan","commit_stats":null,"previous_names":["dbarowy/automan"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/automan-lang/AutoMan","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/automan-lang%2FAutoMan","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/automan-lang%2FAutoMan/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/automan-lang%2FAutoMan/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/automan-lang%2FAutoMan/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/automan-lang","download_url":"https://codeload.github.com/automan-lang/AutoMan/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/automan-lang%2FAutoMan/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":35069183,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-07-03T02:00:05.635Z","response_time":110,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["automan","crowdsourcing","scala"],"created_at":"2026-06-15T12:00:25.793Z","updated_at":"2026-07-03T02:01:16.789Z","avatar_url":"https://github.com/automan-lang.png","language":"Scala","funding_links":[],"categories":["人工智能"],"sub_categories":["微服务框架"],"readme":"# AutoMan\n\n## What is AutoMan? \u003ca id=\"overview\"\u003e\u003c/a\u003e\n\nAutoMan is the first fully automatic **crowdprogramming** system. With AutoMan, you declaratively define **human functions** and use them just as you would ordinary functions. Focus on your application logic instead of MTurk code.\n\nAutoMan is currently available as a library for [Scala](https://www.scala-lang.org/).\n\n## Example\n\n```scala\n  def which_one() = radio (\n    budget = 5.00,\n    text = \"Which one of these does not belong?\",\n    options = (\n      choice('oscar, \"Oscar the Grouch\", \"https://tinyurl.com/y2nf2h76\"),\n      choice('kermit, \"Kermit the Frog\", \"https://tinyurl.com/yxh2emmr\"),\n      choice('spongebob, \"Spongebob Squarepants\", \"https://tinyurl.com/y3uv2oew\"),\n      choice('cookiemonster, \"Cookie Monster\", \"https://tinyurl.com/y68x9zvx\"),\n      choice('thecount, \"The Count\", \"https://tinyurl.com/y6na5a8a\")\n    )\n  )\n\n```\n\nThis function produces an MTurk task that looks like this:\n\n![A \u0026quot;radio button\u0026quot; question with 5 options, including images.](.gitbook/assets/spongebob.png)\n\nThe function can be called like any other function in Scala:\n\n```scala\nwhich_one()\n```\n\nNotice in the above declaration and function call, there was no need to specify task wages, the number of workers, how to handle network errors or other system failures, or how to determine whether answers are good.  AutoMan _automatically_ handles pricing, quality control, and task management.\n\n## Learn More\n\nTo get started, see our [documentation](https://docs.automanlang.org).\n\n## Acknowledgements\n\nThis material is based on work supported by National Science Foundation Grant Nos. CCF-1144520 and CCF-0953754 and DARPA Award N10AP2026. Microsoft Research also generously supported research and development by funding experiments on Mechanical Turk.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fautoman-lang%2FAutoMan","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fautoman-lang%2FAutoMan","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fautoman-lang%2FAutoMan/lists"}