{"id":48084423,"url":"https://github.com/upbound/function-claude-status-transformer","last_synced_at":"2026-06-16T01:01:59.515Z","repository":{"id":312145023,"uuid":"996322747","full_name":"upbound/function-claude-status-transformer","owner":"upbound","description":"Summarize unhealthy resource statuses using Claude","archived":false,"fork":false,"pushed_at":"2026-04-17T07:48:40.000Z","size":154,"stargazers_count":2,"open_issues_count":1,"forks_count":1,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-04-17T09:15:59.738Z","etag":null,"topics":["ai","anthropic","anthropic-claude","crossplane","crossplane-functions","functions","go","golang","intelligent-functions","upbound","upbound-ai","upbound-crossplane","upbound-official","uxp","xp"],"latest_commit_sha":null,"homepage":"https://docs.upbound.io","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/upbound.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,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-06-04T19:29:59.000Z","updated_at":"2026-01-14T04:11:14.000Z","dependencies_parsed_at":"2025-08-29T01:44:27.703Z","dependency_job_id":null,"html_url":"https://github.com/upbound/function-claude-status-transformer","commit_stats":null,"previous_names":["upbound/function-claude-status-transformer"],"tags_count":8,"template":false,"template_full_name":"crossplane/function-template-go","purl":"pkg:github/upbound/function-claude-status-transformer","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/upbound%2Ffunction-claude-status-transformer","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/upbound%2Ffunction-claude-status-transformer/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/upbound%2Ffunction-claude-status-transformer/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/upbound%2Ffunction-claude-status-transformer/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/upbound","download_url":"https://codeload.github.com/upbound/function-claude-status-transformer/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/upbound%2Ffunction-claude-status-transformer/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34386320,"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-06-15T02:00:07.085Z","response_time":63,"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":["ai","anthropic","anthropic-claude","crossplane","crossplane-functions","functions","go","golang","intelligent-functions","upbound","upbound-ai","upbound-crossplane","upbound-official","uxp","xp"],"created_at":"2026-04-04T15:07:05.760Z","updated_at":"2026-06-16T01:01:59.437Z","avatar_url":"https://github.com/upbound.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# function-claude-status-transformer\n[![CI](https://github.com/upbound/function-claude-status-transformer/actions/workflows/ci.yml/badge.svg)](https://github.com/upbound/function-claude-status-transformer/actions/workflows/ci.yml)\n[![Slack](https://img.shields.io/badge/slack-upbound_crossplane-purple?logo=slack)](https://crossplane.slack.com/archives/C01TRKD4623)\n[![GitHub release](https://img.shields.io/github/release/upbound/function-claude-status-transformer/all.svg)](https://github.com/upbound/function-claude-status-transformer/releases)\n\nFunction-claude-status-transformer is a Crossplane Intelligent Function,\nspecifically designed to help with identifying issues with your Composed\nResources.\n\nUse this function in any Crossplane Composition function pipline where you\nwould like to have information communicated to end users of your API about\nissues with the Compositions.\n\n## Model Support:\n|Provider|Models|Notes|\n|---|---|---|\n|[Anthropic]|[claude-sonnet-4-20250514]|This will be configurable in the future.|\n\n## Using this function\n1. Within your Upbound project, run\n```\nup dep add xpkg.upbound.io/upbound/function-claude-status-transformer:v0.0.0-20250703165412-f44b846b3a\n```\n2. Within your Composition add a pipeline step that includes the function:\n```yaml\napiVersion: apiextensions.crossplane.io/v1\nkind: Composition\nmetadata:\n  name: xnetworks.example.upbound.io\nspec:\n  compositeTypeRef:\n    apiVersion: example.upbound.io/v1alpha1\n    kind: XNetwork\n  mode: Pipeline\n  pipeline:\n  ...\n  - functionRef:\n      name: upbound-function-claude-status-transformer\n    input:\n      apiVersion: function-claude-status-transformer.fn.crossplane.io/v1beta1\n      kind: StatusTransformation\n      additionalContext: \"\"\n    step: upbound-function-claude-status-transformer\n    credentials:\n    - name: claude\n      source: Secret\n      secretRef:\n        namespace: crossplane-system\n        name: api-key-anthropic\n  ...\n```\n3. Make sure to include a secret for accessing the Claude API, e.g.\n```bash\nkubectl -n crossplane-system create secret generic api-key-anthropic --from-literal=ANTHROPIC_API_KEY=\"${ANTHROPIC_API_KEY}\"\n```\n\n## Building locally\n\nThis template uses [Go][go], [Docker][docker], and the [Crossplane CLI][cli] to\nbuild functions.\n\n```shell\n# Run code generation - see input/generate.go\n$ go generate ./...\n\n# Run tests - see fn_test.go\n$ go test ./...\n\n# Build the function's runtime image - see Dockerfile\n$ docker build . --tag=runtime\n\n# Build a function package - see package/crossplane.yaml\n$ crossplane xpkg build -f package --embed-runtime-image=runtime\n```\n\n[functions]: https://docs.crossplane.io/latest/concepts/composition-functions\n[go]: https://go.dev\n[function guide]: https://docs.crossplane.io/knowledge-base/guides/write-a-composition-function-in-go\n[package docs]: https://pkg.go.dev/github.com/crossplane/function-sdk-go\n[docker]: https://www.docker.com\n[cli]: https://docs.crossplane.io/latest/cli\n[Anthropic]: https://docs.anthropic.com/en/docs/about-claude/models/overview\n[claude-sonnet-4-20250514]: https://docs.anthropic.com/en/docs/about-claude/models/overview#model-comparison-table\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fupbound%2Ffunction-claude-status-transformer","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fupbound%2Ffunction-claude-status-transformer","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fupbound%2Ffunction-claude-status-transformer/lists"}