I compiled this into an actual shared circle.
https://plus.google.com/116347431032639424492/posts/BGk6DaqU...
I scraped the site with
[].slice.call(document.querySelectorAll('a[href^="/track"]'),0).map(function(e){return e.href.replace(/.*\//g,'')})
and then I use var src = ["104448221006262595331", "102308414709447205951",...]; /*insert urls from above here*/
var blah = src.map(function(e){return [["",null,e],"",[]]});
var x = new XMLHttpRequest();x.open('post','https://plus.google.com/_/socialgraph/mutate/modifymemberships/?_reqid=333888252&rt=j,true);x.setRequestHeader('content-type',"application/x-www-form-urlencoded");x.send('m=['+JSON.stringify(blah)+']&a=[[["REDACTED"]]]&r=[[]]&at=REDACTED&')
To update the circle.Edit: Updated the script to reflect site changes
Edit: It looks like sharing a circle doesn't include future changes.
Edit: you can skip the first step and instead use http://hngp.axxim.net/home/json